Разница между FOREIGN KEY и FOREIGN KEY constraint

220
30 марта 2018, 10:17

В MySQL документации написано следующее:

MySQL supports foreign keys, which let you cross-reference related data across tables, and foreign key constraints, which help keep this spread-out data consistent.

Вопрос: В чем разница между foreign key constraints и foreign keys в этом предложении?

(из "let you cross-reference related data across tables" и "which help keep this spread-out data consistent" разница мне не понятна)

Answer 1
CREATE TABLE MyTable
( 
  id INT NOT NULL PRIMARY KEY,
  value VARCHAR(50),
  idKek INT,
  CONSTRAINT fk_idKek FOREIGN KEY(idKek) references MtSecondTable(idKek)
)
CREATE TABLE MyTable
( 
  id INT NOT NULL PRIMARY KEY,
  value VARCHAR(50),
  idKek INT,
  FOREIGN KEY(idKek) references MtSecondTable(idKek)
)

В первом случае вы сами задаёте название для CONSTRAINT, во втором оно сгенерируется автоматически. Вот и вся разница.

READ ALSO
Что такое index_name и CONSTRAINT [symbol]

Что такое index_name и CONSTRAINT [symbol]

В документации MySQL предоставлен вот такой шаблон:

272
Не сохраняется запись в БД

Не сохраняется запись в БД

Здравствуйте, возникла проблемка при записи данных в БДНе могу понять, где проблема, в записи или в сохранении

216
Простой запрос mySql

Простой запрос mySql

Здравствуйте! Есть запрос

207
PHPMYADMIN. Как проверить на дубликат при импорте CSV?

PHPMYADMIN. Как проверить на дубликат при импорте CSV?

Добрый день! Подскажите пожалуйстаЯ импортирую через phpmyadmin csv файл

197