Podczas tworzenia klucza obcego typy danych powinny być zgodne z kluczem podstawowym. Zmień PrimaryContact
pole w Customer
tabela pasująca do typu danych PersonId
, w tym przypadku 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
);
Kolumny muszą być tego samego typu, co widać na stronie podręcznika zatytułowanej Korzystanie z ograniczeń dotyczących klucza OBCEGO :