您的位置:首页 > 数据库 > MySQL

mysql 外键约束

2013-04-18 20:33 197 查看


上图中contact_interest和contact_seeking两张表的创建涉及到外键约束,其中一个表创建完成后,另一个的创建总是失败,害我摸索好久。

这是我创建失败的sql:

create tablecontact_interest

(

contact_id int not null,

interest_id int not null,

primary key(contact_id,interest_id),

constraint my_contacts_contact_id_fk

foreign key(contact_id)

references my_contacts(contact_id),

constraint interests_interest_id_fk

foreign key(interest_id)

references interests(interest_id)

);

create tablecontact_seeking

(

contact_id int not null,

seeking_id int not null,

primary key(contact_id,seeking_id),

constraint my_contacts_contact_id_fk

foreign key(contact_id)

references my_contacts(contact_id),

constraint seeking_seeking_id_fk

foreign key(seeking_id)

references seeking(seeking_id)

);

试了不知道多少次呢,郁闷死我了,开始以为是创建组合主键,和外键约束的语句有问题,查了好些地方,比对尝试了n次,发现原来不是语法问题

而是两张表中constraint my_contacts_contact_id_fk名字重复了,原来约束名不能重复。恍然大悟。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: