2016-07-13 4 views
-1

Я получил сообщение об ошибке, которое вы можете прочитать в названии. Поэтому я краснею, важно, чтобы ключи имели одинаковый тип данных. Это (проверка). Также, что оба должны быть ключом. Это (проверка). Но это с советами, все люди, которые уже задавали вопрос, имели одну из этих проблем. Так что же мое сейчас? Любая идея, что еще может вызвать эту ошибку?Невозможно добавить ограничение внешнего ключа, (нет разных типов данных)

Родитель стол:

CREATE TABLE `parent` (
    `an_id` char(24) NOT NULL, 
    `stuff` int(10) unsigned NOT NULL DEFAULT '0', 
    `otherstuff` datetime DEFAULT NULL, 
    PRIMARY KEY (`an_id`) 
) ENGINE=InnoDB DEFAULT CHARSET=utf8; 

Мой стол:

CREATE TABLE `child` (
`date` datetime NOT NULL, 
`an_id` char(24) NOT NULL, 
PRIMARY KEY (`date`,`an_id`), 
CONSTRAINT `child` FOREIGN KEY (`an_id`) REFERENCES `parent` (`an_id `) 
) ENGINE=InnoDB DEFAULT CHARSET=utf8; 

ответ

2

Это опечатка с вашей стороны. У вас есть дополнительное пространство после an_id:

REFERENCES `parent` (`an_id `) 
+0

спасибо большое, это так неловко ... Вы не хотите знать, как долго им ищет ошибку: 'D – nova

+0

тогда я не буду просить:) – sstan

Смежные вопросы