Mysql
 sql >> база данни >  >> RDS >> Mysql

Превеждане на атрибути на връзката от ER диаграма в SQL

Да, трябва да създадете Meeting обект за представяне на връзката много към много между Student и Supervisor . В него можете да се свържете с тези таблици, като използвате външни ключове, които съответстват на съответните таблици. В SQL може да изглежда така:

Create table Meeting {
id INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
student_id INT NOT NULL,
supervisor_id INT NOT NULL,
//rest of the fields...   
FOREIGN KEY (student_id) REFERENCES Student(id)
FOREIGN KEY (supervisor_id) REFERENCES Supervisor(id)
}

Същото бихте направили и за Supervise между Project и Supervisor . Също така можете да използвате нещо, наречено композитен ключ на вашата маса за срещи, предполагам, че се свежда до лични предпочитания, обикновено го правя по този начин, когато представлявам много към много връзки. Не казвам, че това е синтаксисът, който ще използвате, това зависи от вашата база данни, това беше само пример, който да ви насочи в правилната посока. Надявам се да помогне.

Също така за вашата диаграма (просто предполагам, че това е за клас) може да искате да разгледате софтуер като visio или визуална парадигма, за да създадете вашата диаграма за ER. Въпреки че повечето хора ще могат да разберат текущата ви диаграма, това не е правилно моделиране.

За забавление направих диаграма въз основа на вашите таблици:

Вие бихте искали обект между Supervisor и Project ако са много към много отношения. Това се нарича associative entity . Означих моя SupervisorProject само за да са малко по-ясни.

Редактиране Пренебрегнах факта, че студентът и проектът бяха много към едно, коригирахме това, съжалявам.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Изявление за актуализиране на MySQL за съхраняване на позиции в класирането

  2. php/mysql с множество заявки

  3. MySQL Max функция за смесване на редове

  4. Как да разрешите грешката не е в GROUP BY в mysql заявката

  5. Използване на присъединяване с групирани редове с данни