Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Проектирование БД Новый топик    Ответить
 Связь один ко многим от нескольких таблиц  [new]
goandget
Member

Откуда:
Сообщений: 8
Добрый день! Проектирую базу данных и столкнулся с проблемой.
У меня в руках пять таблиц. Первая содержит список заявок на открытие и закрытие абонемента, вторая содержит список заявок по доставке и отмене доставки, третья содержит заявки по перемещению, четвёртая содержит заявки на отгрузку продукции.
И мне нужно сделать пятую таблицу, в которой номера всех заявок из четырёх таблиц использовались бы в логе.

Есть варианты:
1) Создать представление, в котором сделать union all всех четырёх таблиц с заявками, а уже с представлением строить реляционное отношение для таблицы лога.
2) Для каждой таблицы создать лог свой (но так не хочется, получится уже не одна таблица лога)

Как обойтись одной таблицей логом, построив при этом правильные реляционные отношения. Или это уже не реляционные отношения? Как быть?
Спасибо заранее!
p.s. Извиняюсь за кривые названия таблиц, СУБД не access, просто был под рукой для схемы.

К сообщению приложен файл. Размер - 37Kb
3 июл 17, 17:42    [20610029]     Ответить | Цитировать Сообщить модератору
 Re: Связь один ко многим от нескольких таблиц  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 43937

Выкинуть все таблицы. Создать одну "заявки" с дополнительным полем "тип заявки".

Posted via ActualForum NNTP Server 1.5

3 июл 17, 17:56    [20610103]     Ответить | Цитировать Сообщить модератору
 Re: Связь один ко многим от нескольких таблиц  [new]
Akina
Member

Откуда: Зеленоград, Москва, Россия
Сообщений: 16297
goandget, У Вас что, единая сквозная нумерация для первых четырёх таблиц, и номер заявки в совокупности этих таблиц уникален? Если да - то нафига 4 таблицы? Если нет - как Вы собираетесь понимать, к какой из записей относится запись "лога"? Да и хорош таки лог - с суммой и датой...

Dimitry Sibiryakov, +100500
4 июл 17, 12:17    [20611736]     Ответить | Цитировать Сообщить модератору
 Re: Связь один ко многим от нескольких таблиц  [new]
LSV
Member

Откуда: Киев
Сообщений: 30148
Dimitry Sibiryakov
Выкинуть все таблицы. Создать одну "заявки" с дополнительным полем "тип заявки".
+500.
4 июл 17, 13:00    [20611931]     Ответить | Цитировать Сообщить модератору
 Re: Связь один ко многим от нескольких таблиц  [new]
s_ustinov
Member

Откуда: Lugano, CH
Сообщений: 1860
goandget,
В таблице лога сделать три поля:
Номер записи лога
Код таблицы
Номер записи в таблице

И еще дополнительные поля для самого лога.

И будет счастье. Зачем представление делать?
5 июл 17, 19:34    [20616988]     Ответить | Цитировать Сообщить модератору
 Re: Связь один ко многим от нескольких таблиц  [new]
MasterZiv
Member

Откуда: Питер
Сообщений: 33576
goandget
Добрый день! Проектирую базу данных и столкнулся с проблемой.
У меня в руках пять таблиц. Первая содержит список заявок на открытие и закрытие абонемента, вторая содержит список заявок по доставке и отмене доставки, третья содержит заявки по перемещению, четвёртая содержит заявки на отгрузку продукции.


Либо делай разные таблицы логов, по каждой на тип, либо объединяй все заявки наследованием в одну базовую сущность и наследников, и к общей базовой сущности -- одну таблицу логов.
11 июл 17, 18:50    [20634647]     Ответить | Цитировать Сообщить модератору
 Re: Связь один ко многим от нескольких таблиц  [new]
MasterZiv
Member

Откуда: Питер
Сообщений: 33576
s_ustinov
goandget,
В таблице лога сделать три поля:
Номер записи лога
Код таблицы
Номер записи в таблице

И еще дополнительные поля для самого лога.

И будет счастье. Зачем представление делать?


Ты только что предложил использовать антипаттерн проектирования реляционной БД.
11 июл 17, 18:51    [20634649]     Ответить | Цитировать Сообщить модератору
 Re: Связь один ко многим от нескольких таблиц  [new]
s_ustinov
Member

Откуда: Lugano, CH
Сообщений: 1860
MasterZiv,
Почему это?
Первичный ключ нормализованный. А поля для содержимого лога... По большому счету могут быть любыми.
11 июл 17, 18:58    [20634660]     Ответить | Цитировать Сообщить модератору
 Re: Связь один ко многим от нескольких таблиц  [new]
MasterZiv
Member

Откуда: Питер
Сообщений: 33576
s_ustinov
Почему это?


Потому это.
12 июл 17, 18:19    [20638143]     Ответить | Цитировать Сообщить модератору
Все форумы / Проектирование БД Ответить