2017-10-20 1 views
0

Je:Ne peut pas créer la table `travel`.`city` (errno: 150 "contrainte de clé étrangère est mal formé")

CREATE TABLE place(
    placeid int UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, 
    placename varchar(255), 
    placeinfo text, 
    locationx double, 
    locationy double 
); 

et create table endroit est correct, mais je créé:

CREATE TABLE city(
    cityid int UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, 
    placeid int, 
    cityname varchar(255), 
    image text, 
    constraint n foreign key(placeid) references place(placeid) 
); 

Je reçois une erreur:

Can't create table `travel`.`city` (errno: 150 "Foreign key constraint is incorrectly formed") 

Comment résoudre ce problème?

Répondre

1

Votre colonne placeid dans la table CITY n'est pas une INT UNSIGNED comme dans la table PLACE.

CREATE TABLE city(
    cityid int UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, 
    placeid int UNSIGNED, 
    cityname varchar(255), 
    image text, 
    constraint n foreign key(placeid) references place(placeid) 
) 
+0

Merci! C'est vrai –