powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Many-to-many. Правильно ли?
17 сообщений из 17, страница 1 из 1
Many-to-many. Правильно ли?
    #34776022
pshik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть таблицы:
Project
Company
Profession
Employee

В Проекте может быть много Компаний
В каждой Компании может быть много групп Профессий
В каждой Профессии много Работников
И каждый Работник может иметь несколько Профессий

Я создал смежные таблицы:
CompanyAssignment
ProfessionAssignment
EmployeeAssignment

в которых есть FK к обеим таблицам
Например:
CompanyAssignment
ComAssignID
CompanyID
ProjectID

тогда будет в:

ProfessionAssignment
ProfAssignID
ProfessionID
ComAssignID - FK к CompanyAssignment

и так далее

Это правильный подход?
Или есть другие варианты?

Спасибо
...
Рейтинг: 0 / 0
Many-to-many. Правильно ли?
    #34776048
Baykin Ilya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Во всех книгах, которые я читал по проектироованию БД делалось именно так......
На мой взгляд, сделано классически, а, значит, верно.

Вот только сейчас подумалось-при самых же обыкновенных запросах (например, какие в проекте задействованы работники мы будем соединять 3 и более таблиц!) я правильно подумал?

Но, повторюсь, другого варианта в книгах я не видел.
...
Рейтинг: 0 / 0
Many-to-many. Правильно ли?
    #34776057
pshik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Baykin Ilya
Вот только сейчас подумалось-при самых же обыкновенных запросах (например, какие в проекте задействованы работники мы будем соединять 3 и более таблиц!) я правильно подумал?

Да,это и смущает
Может нужно всё в одну смежную таблицу запихать?
Вот и думаю....
...
Рейтинг: 0 / 0
Many-to-many. Правильно ли?
    #34776085
Baykin Ilya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pshik Baykin Ilya
Вот только сейчас подумалось-при самых же обыкновенных запросах (например, какие в проекте задействованы работники мы будем соединять 3 и более таблиц!) я правильно подумал?

Да,это и смущает
Может нужно всё в одну смежную таблицу запихать?
Вот и думаю....

Нет, конечно! у вас же обычное приложение, а не Хранилище Данных с OLAP кубами и агрегированными и денормализованными данными и таблицами!
если вы запихнете все в 1 таблицу (грубо говоря), то у вас будем очень много (ПОЧТИ) повторяющихся записей.... представили?ну типа:
Проект А-программер-Иванов,
Проект А-аналитик-Петров и
Проект А -.......
Проект А -.......
Проект А -.......
............................. т д. А это нарушает какое-то правило нормализации (требование ко 2 вроде НФ)

К утру гуру подтянутся-подискутируем еще!
...
Рейтинг: 0 / 0
Many-to-many. Правильно ли?
    #34776168
mir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pshikВ каждой Компании может быть много групп Профессий А есть ли вообще нужда привязывать профессии к компаниям? Может, речь идёт о должностях?
...
Рейтинг: 0 / 0
Many-to-many. Правильно ли?
    #34776471
мод
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pshikИли есть другие варианты?
1. T1:T2 как 1:n -> ссылка из T2 на T1
2. T1:T2 как m:n -> перекрестная таблица T1-T2
других вариантов нет
...
Рейтинг: 0 / 0
Many-to-many. Правильно ли?
    #34776507
Фотография proposed amendment
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pshik

Это правильный подход?
Или есть другие варианты?



подход не правильный
...
Рейтинг: 0 / 0
Many-to-many. Правильно ли?
    #34778982
pshik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
proposed amendment pshik

Это правильный подход?
Или есть другие варианты?



подход не правильный

И что? Как же надо?
...
Рейтинг: 0 / 0
Many-to-many. Правильно ли?
    #34778990
pshik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mir pshikВ каждой Компании может быть много групп Профессий А есть ли вообще нужда привязывать профессии к компаниям? Может, речь идёт о должностях?

Я говорю о группах профессий:
Сварщики
Разряд 1
Разряд 2
Разряд 3
Разряд 4 ....
...
Рейтинг: 0 / 0
Many-to-many. Правильно ли?
    #34779670
mir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pshik mir pshikВ каждой Компании может быть много групп Профессий А есть ли вообще нужда привязывать профессии к компаниям? Может, речь идёт о должностях?

Я говорю о группах профессий:
Сварщики
Разряд 1
Разряд 2
Разряд 3
Разряд 4 ....Дык, я и говорю, зачем их привязывать к компании? Справочник профессий сами по себе, компании сами по себе. К компании привязано только штатное расписание, то есть в итоге список имеющихся должностей. Для должностей нужный определенные профессии, да, но это уже другой вопрос.
...
Рейтинг: 0 / 0
Many-to-many. Правильно ли?
    #34780034
Фотография proposed amendment
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pshik proposed amendment pshik

Это правильный подход?
Или есть другие варианты?



подход не правильный

И что? Как же надо?

есть разница между профессией и должностью

профессия атрибут персоны
должность атрибут сотрудника
...
Рейтинг: 0 / 0
Many-to-many. Правильно ли?
    #34781577
ModelR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добавить таблицу Person.

и слегка видоизменить:
В Проекте может быть много Компаний
В каждой Компании может быть много групп Профессий
В каждой Профессии много Работников
И каждый Человек может несколько раз быть Работником

Итого:

Employee -- кто работает--> Person
Employee -- где работает--> Profession --> Company --> Project

Может действительно в задачке каждая компания имеет свой список профессий.
Кто сказал что это про кадровое агенство?
...
Рейтинг: 0 / 0
Many-to-many. Правильно ли?
    #34781656
Фотография BULK INSERT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ModelRКто сказал что это про кадровое агенство?

вообще ТЗ кривое - нет смысла гадать ИМХО
...
Рейтинг: 0 / 0
Many-to-many. Правильно ли?
    #34782495
pshik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BULK INSERT ModelRКто сказал что это про кадровое агенство?

вообще ТЗ кривое - нет смысла гадать ИМХО

Есть конечно справочник профессий,но в каждом проекте участвуют не все группы профессий,что имеются в справочнике.
Поэтому и создана промежуточная таблица.
Кроме того, в каждом проекте у одной и той же компании можут быть разный расклад.
...
Рейтинг: 0 / 0
Many-to-many. Правильно ли?
    #34782510
pshik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
proposed amendment

есть разница между профессией и должностью

профессия атрибут персоны
должность атрибут сотрудника

И что у сварщика это разные вещи?
У него и профессия и должность -просто сварщик.

или профессия сварщик,а должность - сварщик 4 разряд?

Думаю это излишество в проектном управлении.
Достаточно групп профессий по разрядам и тарифы оплаты привязаны к ним.
...
Рейтинг: 0 / 0
Many-to-many. Правильно ли?
    #34782585
Фотография proposed amendment
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pshik
Думаю это излишество в проектном управлении.


иц ап ту ю, как говорится.

не знаю при чем тут проектное управление
...
Рейтинг: 0 / 0
Many-to-many. Правильно ли?
    #34782649
pshik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
proposed amendment pshik
Думаю это излишество в проектном управлении.


иц ап ту ю, как говорится.

не знаю при чем тут проектное управление

база потому что для учёта затрат в проектах
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Many-to-many. Правильно ли?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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