满街游荡 2016-05-10 02:42 采纳率: 0%
浏览 2851

mysql错误代码 Err] 1215

运行生气了语句:
CREATE TABLE net_ippoolexludesection (
sectionId int(11) NOT NULL AUTO_INCREMENT,
ippoolId int(11) NOT NULL COMMENT '地址池ID',
routeId int(11) NOT NULL COMMENT '设备ID',
startip varchar(15) NOT NULL COMMENT '起始地址',
endip varchar(15) NOT NULL COMMENT '结束地址',
lstartip bigint(255) NOT NULL COMMENT '其实IP',
lendip bigint(255) NOT NULL COMMENT '结束IP',
PRIMARY KEY (sectionId),
CONSTRAINT net_ippoolexludesection_ibfk_1 FOREIGN KEY (ippoolId) REFERENCES net_ippoolinfo (poolid) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='ip地址池排除地址段';

报错 Err] 1215 - Cannot add foreign key constraint

net_ippoolinfo 表的结构如下
CREATE TABLE net_ippoolinfo (
poolid int(7) NOT NULL AUTO_INCREMENT,
poolName varchar(50) NOT NULL,
routid int(11) NOT NULL,
gateway varchar(15) DEFAULT NULL,
maskStr varchar(15) DEFAULT NULL,
dnsip varchar(50) DEFAULT NULL,
poolSection varchar(200) DEFAULT NULL,
vpnName varchar(50) DEFAULT NULL,
maxUseNum int(7) DEFAULT NULL,
produceTime datetime DEFAULT NULL,
poolDomain varchar(255) DEFAULT NULL,
poolDomain1 varchar(255) DEFAULT NULL,
PRIMARY KEY (poolid),
UNIQUE KEY dd (poolid)
) ENGINE=InnoDB AUTO_INCREMENT=220 DEFAULT CHARSET=utf8;
mysql 版本 5.6
就大神指教,

  • 写回答

1条回答 默认 最新

  • 小灸舞 2016-05-10 02:57
    关注

    可能的原因:
    1.没有使用 InnoDB as the engine on all tables.
    2.你想在目标表上引用一个不存在的键。确保它是另一个表中的一个键 (it can be a primary or unique key)
    3.列的类型是不一样的 (exception is the column on the referencing table can be nullable).
    4.ON DELETE SET NULL is not defined to be null。所以确保列设置默认为空。

    评论

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!