嘿家伙得到错误代码1215,SQL状态HY000:无法为我的PERSON_GROUP
表和IMAGES
表添加外键约束..不知道为什么,我的引用有问题?我试过重写它但它只是不起作用......
现在更新了代码我刚刚收到FOREIGN KEY (ID) REFERENCES INSTRUMENT(ID)
答案 0 :(得分:3)
您只能创建引用主键或唯一键的外键。由于ID是PERSON的主键,因此将外键更改为指向ID而不是电子邮件。您还可以将电子邮件设为一个唯一的列,这可能是一个好主意,以确保没有人重复使用相同的电子邮件地址,但是使用整数然后字符串来创建外键的存储空间更少。
答案 1 :(得分:0)
我有这个问题。问题是数据库引擎。直到我在它工作之前添加了ENGINE=MyISAM DEFAULT CHARSET=latin1
。我想我的默认值是innoDB
或其他。
CREATE TABLE LECTURE_NOTE (
ID bigint(20) NOT NULL,
NOTE VARCHAR(1000) NOT NULL,
NOTE_DATE TIMESTAMP NULL DEFAULT NULL,
LECTURE_ID bigint(20) NOT NULL,
PUBLISHER_ID bigint(20) NOT NULL,
PRIMARY KEY (ID),
CONSTRAINT fk_lecture_id FOREIGN KEY (LECTURE_ID) REFERENCES
COURSE_LECTURE (ID),
CONSTRAINT fk_publisher_id FOREIGN KEY (PUBLISHER_ID) REFERENCES
PUBLISHER (ID)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;