Я использую MariaDB, и у меня возникают проблемы с введением CONSTRAINT.
Моя версия MariaDB:
Ver 15.1 Distrib 10.1.37-MariaDB
Мое сообщение об ошибке:
ERROR 1005 (HY000): Can't create table `schedulingGUI`.`#sql-1043_1a` (errno: 150 "Foreign key constraint is incorrectly formed")
Запись в моей таблице для город :
CREATE TABLE city
(
cityId INT unsigned NOT NULL AUTO_INCREMENT,
city VARCHAR(50),
countryId INT unsigned,
customerName VARCHAR(50),
address VARCHAR(50),
postalCode VARCHAR(50),
phone VARCHAR(50),
createDate VARCHAR(50),
createdBy VARCHAR(50),
lastUpdateBy VARCHAR(50),
PRIMARY KEY (cityId)
);
Запись в моей таблице для клиент :
CREATE TABLE customer
(
customerId INT unsigned NOT NULL AUTO_INCREMENT,
customerName VARCHAR(50),
addressId INT unsigned,
active INT unsigned,
address VARCHAR(50),
city VARCHAR(50),
postalCode VARCHAR(50),
phone VARCHAR(50),
createDate VARCHAR(50),
createdBy VARCHAR(50),
lastUpdateBy VARCHAR(50),
PRIMARY KEY (customerId)
);
Запись в МОЕМ КОНСТРИНТЕ:
ALTER TABLE city
ADD CONSTRAINT customerNameChange01
FOREIGN KEY (customerName)
REFERENCES customer (customerName)
ON UPDATE CASCADE
ON DELETE CASCADE;
Недавно я наткнулся на ПОКАЗАТЬ СТАТУС ДВИГАТЕЛЯ INNODB.В ней говорится следующее:
Cannot find an index in the referenced table where the
referenced columns appear as the first columns, or column types
in the table and the referenced table do not match for constraint.
Спасибо за понимание.
РЕДАКТИРОВАТЬ: Содержание добавлено.Исправлено сообщение об ошибке.