| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Базы Данных > проектирование базы |
| Автор: studentigor 13.4.2012, 09:28 |
| Всем привет. В общем мне нужно спланировать базу, пока небольшую, но это будет расширятся, и чтоб потом я не пришел к выводу что спланировал не так, и нужно переделать, хочу посоветоваться с самого начала. Нужен список сотрудников - это будет одна таблица, с описание данных о сотруднике. И дальше, у любого сотрудника могут быть несколько подчиненных, и так же, у любого сотрудника может быть несколько начальников. Я бы для этого добавил ещё одну таблицу с полями id, director, junior. в director попадал бы id сотрудника, кто является начальником над id, который записан в junior. Может комуто это покажется смешно, я просто не принимал участий в больших проектах, и не сильно знаю как правильно планировать базу, для проектов, который будут постоянно разростатся. Подскажите, как правильно решить эту задачу. Спасибо |
| Автор: Aliance 13.4.2012, 10:37 |
| Как по логике у подчинённого может быть несколько равноправных начальников? По идеи структура фирмы должна представлять собой дерево. При варианте, где " у любого сотрудника могут быть несколько подчиненных, и так же, у любого сотрудника может быть несколько начальников" - это таблица соотношений многие-ко-многим. Получается, как и написано выше. Разве, что поле id в данной таблице не особо-то и нужно с логической точ\ки зрения, с точки зрения нормализации не уверен. |
| Автор: studentigor 14.4.2012, 11:00 | ||
Вы имеете в виду, такую ситуацию: У работника 3го уровня, 2 начальника 2-го уровня? Да, такая ситуация тоже может быть. Судя по вашим словам - мой вариант правельный? |
| Автор: Aliance 16.4.2012, 09:23 |
В общем-то да, получается связующая табличка, организующая связь многие-ко-многим (many-to-many). |