SQLServer2005/在被引用表 'tab2' 中没有与外键 'f
? ? ? ?? 第二种情况:可能是被引用表中有多个主键 ? ? ? alter table te_evaluationscore add constraint FK_teevaluationscore_tsuser foreign key(user_id,branch_id) references ts_user(user_id,branch_id) ? ? ? ? ? ???SQLServer2005/在被引用表 'tab2' 中没有与外键 'fk_tab12tab2' 中的引用列列表匹配的主键或候选键。 ? 这个原因是由于表2被引用的的字段不是候选键或者不是主键,说白了就是确保它是唯一的; ?CREATE TABLE tab1? --将表tab2的字段name2作为tab1的外键, ? ALTER TABLE tab1 ADD CONSTRAINT fk_tab12tab2? FOREIGN KEY (name) REFERENCES tab2(name2); ? --错误信息 /*消息 1776,级别 16,状态 0,第 1 行 //将字段name2作为主键,如果按照如下方式建立表,那么结果通过。 --命令已成功完成。 //将字段name2设为唯一, ?? CREATE TABLE tab2 那么结果也是通过的。 如果要删除约束: ALTER TABLE tab1 DROP CONSTRAINT fk_tab12tab2 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |