powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / учет движения
1 сообщений из 26, страница 2 из 2
учет движения
    #34352755
MaryCat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Давайте посмотрим, что Вы предлагаете...
На самом деле это каламбур нескольких решений, предлагаемых выше уважаемой аудиторией.
Остановитесь на каком-то одном варианте:
1. Самое удачное, на мой взгляд, и оправдавшее себя на практике не раз.
Bogdanov Andrey s u
Моя задача расширяется
Товар может не только числиться за сотрудником или отделом, а также может быть отправлен в другую фирму, страну и так далее...

Этого следовало ожидать. Обычно так и бывает - где два там и много :)
На мой взгляд лучшее решение (если формулировать в терминах ООП) сделать общий класс "места нахождения" и унаследовать от него все остальное:
...

В данном случае в таблице Production moving будет единственное поле Targer.ID (FK)

2. Использование в таблице Production moving дискриминатора (типа объекта - Types of subjects.ID) совместно с аттрибутом ID_объекта (Employee.ID, Department.ID или Any other....ID без физической связи (FK))

Не буду рассуждать о преимуществах и недостатках каждого из этих двух, по этому поводу тоже достаточно высказываний.
Ну и,
3. Предложенный мной, но явно не подходящий на данный момент вариант
MaryCatДобавить 2 новых ID_сотрудника и ID_отдела и соответсвующие FK, а так же check constraint несущий в себе идею: ((ID_сотрудника is null and not ID_отдела is null) or (not ID_сотрудника is null and ID_отдела is null)). Т.о. целостность будет обеспечена, но останется проблема с извлечением данных.
...
Рейтинг: 0 / 0
1 сообщений из 26, страница 2 из 2
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / учет движения
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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