sql >> Base de Datos >  >> RDS >> Mysql

¿Error MySQL 1005?

Al crear una clave externa, los tipos de datos deben coincidir con los de la clave principal. Cambiar el PrimaryContact campo en el Customer tabla para que coincida con el tipo de datos de PersonId , en este caso, int :

CREATE TABLE Customer
(
CustomerID INT NOT NULL AUTO_INCREMENT,
PRIMARY KEY(CustomerID),
CustomerCode VARCHAR(255),
CustomerType VARCHAR(255),
PrimaryContact int,
FOREIGN KEY `fk_Customer_to_Person` (PrimaryContact) REFERENCES Person(PersonID),
CustomerName VARCHAR(255),
CustomerAirlineMiles FLOAT NOT NULL
);

Las columnas deben ser del mismo tipo que se ve en la página del manual titulada Uso de restricciones FOREIGN KEY :