请你能告诉我我做错了吗?
我有MySQl脚本,但最后我得到了
错误1215:无法添加外键约束
这是代码:
CREATE TABLE IF NOT EXISTS profile_public_data
(
idProfile INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
login VARCHAR(64),
name VARCHAR(45),
lastName VARCHAR(45),
location VARCHAR(45),
is_active BOOLEAN DEFAULT false,
age TINYINT,
photo VARCHAR(45),
PRIMARY KEY(idProfile)
);
CREATE TABLE IF NOT EXISTS profile_private_data
(
idProfile INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
CONSTRAINT fk_idProfile
FOREIGN KEY(idProfile)
REFERENCES `profile_public_data`(idProfile)
ON DELETE SET NULL
ON UPDATE SET NULL,
email VARCHAR(45),
password VARCHAR(45),
PRIMARY KEY(idProfile)
);
最佳答案
您在依赖表中的idProfile列设置为自动增量,这是不正确的。它应该只是INT(11)。
插入新记录时,必须指定其值并且该值存在于源表中,而不是自动递增。
关于mysql - 无法添加外键约束,Mysql,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51578715/