суббота, 1 октября 2011 г.

MySQL: #1005 - Can't create table (errno: 150) при попытке создания внешнего ключа

Проблема:
При попытке создать внешний ключ в таблице MySQL командой ALTER TABLE появляется ошибка "#1005 - Can't create table ...#sql-c84_... (errno: 150)".
Причина:
Причин может быть несколько: несовпадение типов поля, являющегося первичным ключом, и поля-внешнего ключа, или же поле, на которое ссылается внешний ключ вообще не является первичным ключом. Для того, чтобы увидеть текст ошибки, нужно выполнить SHOW ENGINE INNODB STATUS, где посмотреть в блок "LATEST FOREIGN KEY ERROR".

Комментариев нет:

Отправить комментарий