CREATE TABLE `city` (
`ID` bigint(22) DEFAULT NULL,
`CITYID` bigint(22) NOT NULL DEFAULT '0',
`CITYNAME` varchar(50) DEFAULT NULL,
`FATHERID` bigint(22) DEFAULT NULL,
UNIQUE KEY `PK_CITY` (`CITYID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
DROP TABLE IF EXISTS `area`;
CREATE TABLE `area` (
`ID` bigint(22) DEFAULT NULL,
`AREAID` bigint(22) NOT NULL DEFAULT '0',
`AREANAME` varchar(50) DEFAULT NULL,
`FATHERID` bigint(22) DEFAULT NULL,
UNIQUE KEY `PK_AREA` (`AREAID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;alter table AREA
add constraint FK_AREA_CITY foreign key (FATHERID)
references CITY (CITYID)
not deferrable;
请教大神这样添加外键是哪里错了?
`ID` bigint(22) DEFAULT NULL,
`CITYID` bigint(22) NOT NULL DEFAULT '0',
`CITYNAME` varchar(50) DEFAULT NULL,
`FATHERID` bigint(22) DEFAULT NULL,
UNIQUE KEY `PK_CITY` (`CITYID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
DROP TABLE IF EXISTS `area`;
CREATE TABLE `area` (
`ID` bigint(22) DEFAULT NULL,
`AREAID` bigint(22) NOT NULL DEFAULT '0',
`AREANAME` varchar(50) DEFAULT NULL,
`FATHERID` bigint(22) DEFAULT NULL,
UNIQUE KEY `PK_AREA` (`AREAID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;alter table AREA
add constraint FK_AREA_CITY foreign key (FATHERID)
references CITY (CITYID)
not deferrable;
请教大神这样添加外键是哪里错了?
解决方案 »
- mysql_cluster测试 请问如何进行1000亿的事务请求
- 关于mysql日期索引的问题
- MySQL 服务器启动问题
- 中间表问题
- 为什么给一个字段建立索引必须要指定这个字段为Not NULL???
- 错误代号:2006 mysql server has gone away
- 老大们! Postgresql 的windows版本上哪下呀!谢谢!!
- 链接时间超过connect_timeout是不是就会mysql链接报错?
- 如何通过部门表查询出一个员工所在的部门、科室到班组,求SQL如何写?
- MySQL的索引需要激活?
- mysql自定义函数查找树,如何设置查询深度?
- 请问 这样的数据库文件的格式和结构是怎样的?
[SQL]
alter table AREA
add constraint FK_AREA_CITY foreign key (`FATHERID`)
references `CITY`(`CITYID`)
not deferrable;
[Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'not deferrable' at line 4
我是在mysql数据库执行的
[ [not] deferrable [initially {immediate | deferred} ] ] initially immediate(初始化立即执行) initially deferred(初始化延迟执行)你可以把最后一句改成:
not deferrable initially immediate或者not deferrable initially deferred
我知道什么原因了,我是由oracle数据库转为mysql数据库,mysql外键约束中没有这个约束项,不知道mysql的哪个约束条件等于oracle的这个约束条件