2013-11-09 6 views
1

Я создал таблицу в MySQL с именем «ShoppingCart», но она показывает ошибку 1005. Какая ошибка здесь?Ошибка 1005 в MySQL

mysql> create table ShoppingCart(
    -> Current_Purchases varchar(100), 
    -> Previous_Purchases varchar(100), 
    -> Phone_No int(20), 
    -> constraint fk_shop foreign key (Phone_No) references Registration(Phone_No)); 
ERROR 1005 (HY000): Can't create table 'infoproject.shoppingcart' (errno: 150) 

Другая таблица «Регистрация» уже создана, и тот же столбец присутствует с одним и тем же типом данных.

+0

Создать индекс в 'Phone_no' в обоих столбцах – hjpotter92

+0

Является ли' phone_no' основным ключом таблицы 'registration' (или, по крайней мере, имеет уникальное ограничение)? –

+0

@a_horse_with_no_name Нет Я не использовал никаких ограничений для 'Phone_no' – LuluLala

ответ

1

Столбец, на который ссылается внешний ключ, должен быть уникальным. В вашем случае, похоже, что ошибка вызвана неистовым Phone_No в Registration. Измените таблицу Registration, чтобы добавить уникальный индекс на Phone_No.

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