Mysql
 sql >> Database >  >> RDS >> Mysql

Errore MySQL 1005?

Quando si crea una chiave esterna, i tipi di dati devono corrispondere a quelli della chiave primaria. Modifica il PrimaryContact campo nel Customer tabella in modo che corrisponda al tipo di dati di PersonId , in questo 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
);

Le colonne devono essere dello stesso tipo visto nella pagina di manuale intitolata Utilizzo dei vincoli CHIAVE ESTERA :