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 :