我試圖在MySQL中創建以下表格。第一招:錯誤1215:使用ON刪除時無法添加外鍵約束SET NULL
CREATE TABLE IF NOT EXISTS address(
address_id INT NOT NULL AUTO_INCREMENT,
address_region VARCHAR(10) NOT NULL,
address_country VARCHAR(20) NOT NULL,
address_city VARCHAR(30) NOT NULL,
PRIMARY KEY(address_id))ENGINE = InnoDB;
我創造了它成功的,但是當我嘗試創建另一個表如下
CREATE TABLE IF NOT EXISTS spot(
spot_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
spot_address INT(11) NOT NULL,
spot_name VARCHAR(50) NOT NULL,
spot_desc VARCHAR(500) DEFAULT ' ',
spot_speadd VARCHAR(100) NOT NULL,
spot_viewtime INT DEFAULT 0,
FOREIGN KEY(spot_address)
REFERENCES address(address_id)
ON DELETE SET NULL
ON UPDATE SET NULL);
我得到一個錯誤:
ERROR 1215 (HY000): Cannot add foreign key constraint
這是爲什麼創建表陳述失敗?
我認爲你是正確的,它的工作原理! – ssj
要得到一個詳細的錯誤:運行'SHOW ENGINE INNODB STATUS'並查看「最新的外鍵錯誤」部分 –