Синтаксис MySQL при создании внешнего ключа - PullRequest
9 голосов
/ 08 августа 2011

Правильн ли этот синтаксис при создании внешнего ключа?

create table department
(
  departmentID int not null auto_increment primary key,
  name varchar(30)
) type=InnoDB;

create table employee
(
  employeeID int not null auto_increment primary key,
  name varchar(80),
  job varchar(30),
  departmentID int not null references department(departmentID)
) type=InnoDB;

Ответы [ 3 ]

17 голосов
/ 08 августа 2011

Похоже, что MySQL принимает его (не жалуется на синтаксис), но внешний ключ фактически не создается.

Чтобы создать этот внешний ключ, выполните команду:

ALTER TABLE employee ADD CONSTRAINT fk_department FOREIGN KEY (departmentID) REFERENCES department (departmentID);
4 голосов
/ 28 августа 2013
create table employee
(
  employeeID int not null auto_increment primary key,
  name varchar(80),
  job varchar(30),
  departmentID int not null ADD CONSTRAINT fk_department FOREIGN KEY (departmentID) references department(departmentID)
) 
1 голос
/ 02 марта 2016
FOREIGN KEY (departmentID) REFERENCES department(departmentID)

Спасибо.!

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