出现一个错误,其中我的第一个外键约束格式不正确。我正在等待听到我的讲师是否可以发现问题,但我想在这里提问
我的SQL查询如下
CREATE DATABASE rugby;
USE rugby;
CREATE TABLE address(
address_ID INT AUTO_INCREMENT NOT NULL,
address_name VARCHAR(50) NOT NULL,
PRIMARY KEY (address_ID)
) ENGINE=INNODB;
CREATE TABLE team(
team_ID INT AUTO_INCREMENT NOT NULL,
team_Name VARCHAR(25) NOT NULL,
team_Year INT NOT NULL,
PRIMARY KEY(team_ID)
) ENGINE=INNODB;
CREATE TABLE person(
person_ID INT AUTO_INCREMENT NOT NULL,
name VARCHAR(30) NOT NULL,
phone INT NOT NULL,
address_ID INT NOT NULL,
email VARCHAR(50),
photo BLOB,
PRIMARY KEY(person_ID),
FOREIGN KEY(address_ID) REFERENCES address(address_ID) ON DELETE SET NULL ON UPDATE CASCADE
) ENGINE=INNODB;
我遵循了我们的教学方法,但是找不到问题所在。
任何帮助表示赞赏
答案 0 :(得分:1)
在表person
中,您已将address_ID
定义为NOT NULL
,但是
当您定义FOREIGN KEY
时设置:
ON DELETE SET NULL
与NOT NULL
的定义相矛盾。