RDS for MySQL中创建外键约束提示Cannot add foreign key constr

RDS for MySQL中创建外键约束提示Cannot add foreign key constraint是什么原因?

RDS for MySQL是支持外键约束的,但在创建外键约束提示"Cannot add foreign key constraint",会被误认为RDS不支持外键约束。
出现该错误的原因是要关联的表(如tstudent)在该列不是主键。

解决方法
1. 先查看表结构判断是否关联表在对应列不是主键
2. 为tstudent添加主键
mysqlalter table tstudent add primary key(sno);
执行成功,花费 124.90 ms.
3. 再次创建外键,即可成功创建
mysqlalter table tscore add constraint fk_tscore_sno foreign key(sno) references tstudent(sno);
执行成功,花费 161.55 ms.

标签