[英]PHP6 chapter 3 - #1215 - Cannot add foreign key constraint
我尝试从Professional PHP6一书中学习,在第3章中,我需要创建表:
CREATE TABLE `entity` ( `entityid` SERIAL PRIMARY KEY NOT NULL, `name1` varchar(100) NOT NULL, `name2` varchar(100) NOT NULL, `type` char(1) NOT NULL );
和
CREATE TABLE `entityaddress` ( `addressid` SERIAL PRIMARY KEY NOT NULL, `entityid` int, `saddress1` varchar(255), `saddress2` varchar(255), `scity` varchar(255), `cstate` char(2), `spostalcode` varchar(10), `stype` varchar(50), CONSTRAINT `fk_entityaddress_entityid` FOREIGN KEY (`entityid`) REFERENCES `entity`(`entityid`) );
结果为错误: #1215-无法添加外键约束
我检入该书的原始代码,并且有sql文件,这给了我同样的错误。 ...有什么问题吗,或者我的数据库在xampp中有问题吗? 我尝试仅创建表,然后在设计器中创建关系,但是出现程序错误...
我设置了InnoDB引擎。
感谢您的任何建议。
在两个表中, entityid
的类型必须相同。 SERIAL
是BIGINT UNSIGNED NOT NULL AUTO_INCREMENT UNIQUE
的别名。 所以改变
`entityid` int,
至
`entityid` BIGINT UNSIGNED NOT NULL,
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.