Как сделать таблицу отношений между двумя таблицами? SQL - PullRequest
0 голосов
/ 01 апреля 2020

Я новичок в SQL, и я пытаюсь составить таблицу отношений для аспирантов и проектов. Над проектом работают аспиранты, известные как научные сотрудники проекта. Моя проблема в том, что я получил код ошибки: 1064, как это исправить? Я не могу определить проблему.

CREATE TABLE Professor(
Prof_SSN VARCHAR(12),
Prof_Name VARCHAR(12),
Prof_Age VARCHAR(3),
`Rank` VARCHAR(12),
`Research Specialty` VARCHAR(12),
PRIMARY KEY (Prof_SSN)
);

CREATE TABLE `Graduate Students`(
Std_SSN VARCHAR(12),
Std_Name VARCHAR(12),
Std_Age VARCHAR(3),
Degree VARCHAR(12),
PRIMARY KEY (Std_SSN)
);

CREATE TABLE Projects(
`Project number` VARCHAR(10),
`Starting date` VARCHAR(12),
Deadline VARCHAR(8),
Sponsor VARCHAR(12),
Budget VARCHAR(12),
PRIMARY KEY (`Project number`)
);

CREATE TABLE `Project’s Research Assistants`(
Std_SSN VARCHAR(12),
`Project number` VARCHAR(10),
PRIMARY KEY (`Project number`)
FOREIGN KEY (Std_SSN) REFERENCES `Graduate Students`
);```

1 Ответ

2 голосов
/ 01 апреля 2020

Последнее создание таблицы должно быть:

CREATE TABLE `Project’s Research Assistants` (
  Std_SSN VARCHAR(12),
  `Project number` VARCHAR(10),
  PRIMARY KEY (`Project number`)
  FOREIGN KEY (Std_SSN) REFERENCES `Graduate Students` (Std_SSN) -- fixed here
);
...