navicat for mysql 怎么让它在两张表的不同列中输入不同值会提示错误呢?

打个比方,我有A表跟B表.\
A表中有一列叫做名称
B表中也有一列叫做名称,
但A表的名称我都已经写好了,而B表还是空白/
请问我怎样才能实现在B表名称列中插入A表名称列中没有的数据后提示报错.
而插入A表中有的不报错呢?

第1个回答  2015-01-17
用外键约束啊。B表的‘名称’字段参考A表的‘名称’字段。
第2个回答  2015-01-17
B表引用A表外键。
alter table B表 add constraint 外键名字 foreign key references A表(外键字段)追问

我的外键放在A表还是放在B表

追答

B表

追问

可以详细点给我来一段吗?

追答

alter table 表名 add constraint 外键约束名 foreign key(列名) references 引用外键表(列名)。
针对你的问题:
alter table B表 add constraint FK_NM foreign key(名称) references A表(名称);

你需要给A表的“名称”字段加唯一性约束

本回答被提问者和网友采纳
相似回答