powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Косяки в проектировании БД
11 сообщений из 11, страница 1 из 1
Косяки в проектировании БД
    #39659420
Logos300
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Приветствую!
Планирую сделать БД для адвоката на Firebird 1.5.
Вот моя косячная схема БД:

Есть следующие вопросы:
- Следует ли таблицы клиентов (FIZ_CLIENTS, UR_CLIENTS) по юр. и физ. лицам слить в одну таблицу CLIENTS?
- DELA = таблица дел для каждого отдельного клиента. SUDOPR = таблица видов судопроизводства. То есть каждое дело может быть либо Уголовным, либо Гражданским, либо Административным - это виды судопроизводства. Каждый вид судопроизводства состоит из нескольких порядков (этапов) (таблица PORYADOK). Например, Уголовное дело - этапы: досудебное следствие, судебное следствие. В рамках каждого порядка-этапа могут быть поданы N-ое количество судебных документов (таблица SUD_DOCS). Вопрос: как определить связи между таблицами DELA, SUDOPR, PORYADOK, SUD_DOCS?

Или я прошу ссылку на толковое руководство по проектированию БД :) Заранее спасибо
...
Рейтинг: 0 / 0
Косяки в проектировании БД
    #39659422
L_argo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ни в коем случае не бить клиентов на ЮР. и ФИЗ.

Курсач ? :)
...
Рейтинг: 0 / 0
Косяки в проектировании БД
    #39659496
tip78
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Косяки в проектировании БД
    #39659499
tip78
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и ещё: введите в свой проект понятие "сущность" - создайте таблицу ent и туда сущности по ID
1 юзер
2 договор
3 задача
итд
там, помимо ID, будете хранить всякие особенности для них, типа "что надо сделать при удалении её", ini, итд

а также ent_src - источник, как сущность попала в систему

колонки попроще называйте, не birthday, а birth
не client_id, а cid, или peid (parent entity id)
вам их сотни раз потом прописывать
...
Рейтинг: 0 / 0
Косяки в проектировании БД
    #39659518
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что такое CLIENT_VIDS - это справочник типов клиентов или родительская таблица для всех клиентов? И в том и в другом случае схема кривая, но по-разному :)
Связь между клиентами и делами я бы делал M:N - непонятно почему по одному делу не может быть нескольких клиентов.
Связь между делами и судами тоже кривая - у дел есть этапы (аппеляция, etc.), которые могут рассматриваться в разных судах. Т.е. Вам нужна как минимум еще одна таблица - "Этапы конкретного дела" (видимо, имеющая ссылки на DELA и PORYADOK), и именно на нее будет ссылка в SUD_DOCS. В нее же из DELA перенести ссылку на суд.
...
Рейтинг: 0 / 0
Косяки в проектировании БД
    #39660028
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кот МатроскинЧто такое CLIENT_VIDS - это справочник типов клиентов или родительская таблица для всех клиентов? И в том и в другом случае схема кривая, но по-разному

В случае, если это справочник типов клиентов - почему кривая?
...
Рейтинг: 0 / 0
Косяки в проектировании БД
    #39660051
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ОзверинКот МатроскинЧто такое CLIENT_VIDS - это справочник типов клиентов или родительская таблица для всех клиентов? И в том и в другом случае схема кривая, но по-разному

В случае, если это справочник типов клиентов - почему кривая?
Что тогда внешний ключ на нее делает в DELA?
...
Рейтинг: 0 / 0
Косяки в проектировании БД
    #39660073
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кот МатроскинОзверинпропущено...


В случае, если это справочник типов клиентов - почему кривая?
Что тогда внешний ключ на нее делает в DELA?

Думал вы подразумеваете, что как только эта таблица станет таблицей типов клиентов, а не родительской - то само собой в DELA появится ключ по клиенту, а не по его типу.
...
Рейтинг: 0 / 0
Косяки в проектировании БД
    #39660087
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ОзверинКот Матроскинпропущено...

Что тогда внешний ключ на нее делает в DELA?

Думал вы подразумеваете, что как только эта таблица станет таблицей типов клиентов, а не родительской - то само собой в DELA появится ключ по клиенту, а не по его типу.
Это и называется - текущая схема кривая, ее надо менять :)
P.S. Как я уже писал, правильная связь у дел с клиентами M:N, поэтому в DELA ключ по клиенту, конечно, не появится
...
Рейтинг: 0 / 0
Косяки в проектировании БД
    #39660239
Serguei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Logos300- Следует ли таблицы клиентов (FIZ_CLIENTS, UR_CLIENTS) по юр. и физ. лицам слить в одну таблицу CLIENTS?

Ну не совсем в одну, набор атрибутов то разный, но сделать общую таблицу и из нее в свои таблицы связь протянуть -да. Так будет удобнее и правильнее FK делать

Logos300- DELA = таблица дел для каждого отдельного клиента. SUDOPR = таблица видов судопроизводства. То есть каждое дело может быть либо Уголовным, либо Гражданским, либо Административным - это виды судопроизводства. Каждый вид судопроизводства состоит из нескольких порядков (этапов) (таблица PORYADOK). Например, Уголовное дело - этапы: досудебное следствие, судебное следствие. В рамках каждого порядка-этапа могут быть поданы N-ое количество судебных документов (таблица SUD_DOCS). Вопрос: как определить связи между таблицами DELA, SUDOPR, PORYADOK, SUD_DOCS?


Для хранения документов я бы сделал единую таблицу. Для определения связей между таблицами получше разберитесь в предметной области. Не продумали совсем связь "порядка" и "дела".
Данные об оплате писать в основную таблицу с делами не есть хорошо. Лучше выделить. И что там кроме госпошлины никаких других оплат нету?

Logos300Или я прошу ссылку на толковое руководство по проектированию БД :) Заранее спасибо
тынц
...
Рейтинг: 0 / 0
Косяки в проектировании БД
    #39662601
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tip78 тут всё что надо

Блин, спасибо, впервые вижу толковую непереводную статью на хабре!
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Косяки в проектировании БД
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]