Помощь с отношением многих ко многим - PullRequest
0 голосов
/ 13 декабря 2008

У меня проблема с отношением «многие ко многим» в моих таблицах, которое существует между сотрудником и инструктором, которые работают в учебном центре. Я не могу найти связь между ними, и я не знаю, как ее получить. Поля сотрудника:

  • сотрудник №
  • имя сотрудника
  • название компании
  • должность отдела
  • бизнес-сфера
  • номер мобильного телефона
  • доб
  • рейтинг

Поля Инструкторов

  • имя инструктора
  • Институт
  • номер мобильного телефона
  • адрес электронной почты
  • плата

Ответы [ 3 ]

7 голосов
/ 13 декабря 2008

в отношениях «многие ко многим» отношения будут в третьей таблице, что-то вроде

table EmployeeInstructor 
    EmployeeID
    InstructorID

чтобы найти всех сотрудников для конкретного инструктора, вы должны использовать объединение для всех трех таблиц.

5 голосов
/ 13 декабря 2008

Или, скорее всего, будут задействованы классы -

Сотрудник посещает занятия Инструктор преподает класс

так у вас будет и таблица EmployeeClass,
таблица InstructorClass,

и присоединяйтесь к ним. И класс должен быть уникальным, иначе вам понадобится

Класс преподается в четверти по ClassSchedule

и в конечном итоге присоединение EmplyeeClassSchedule к InstructorClassSchedule.

Это довольно быстро становится одним из ваших самых интересных реляционных проектов. Если вы используете «Терри Хэлпин» и «Моделирование ролей объектов», это используется в качестве иллюстративной ситуации в руководстве.

4 голосов
/ 13 декабря 2008

Прежде всего, вам понадобится уникальный ключ в обеих таблицах. Номер сотрудника может работать для таблицы сотрудников, но вам понадобится другой номер для таблицы преподавателей. Лично я склонен использовать в своих таблицах автоматически увеличивающиеся поля идентификаторов, называемые ID. Это первичный ключ. Во-вторых, создайте новую таблицу, InstructorEmployee. Эта таблица имеет два столбца: InstructorID и EmployeeID. Оба поля должны быть проиндексированы. Теперь вы можете создать связь между любым Сотрудником и любым Инструктором, создав запись, которая содержит два идентификатора.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...