sqlserver 2005 創建外鍵約束時注意

 

alter table OA_OrgBudget_Detail
   add constraint FK_ORG_RF_OA_ORGBU foreign key (Years, Org)
      references OA_OrgBudget (Years, Org)
         on update cascade on delete cascade
go

提示的錯誤信息爲:

在被引用表 'OA_OrgBudget' 中沒有與外鍵 'FK_ORG_RF_OA_ORGBU' 中的引用列列表匹配的主鍵或候選鍵。

 

但是實際上 'OA_OrgBudget'  表中是存在了主鍵 Org , Years的,後來吧這兩個字段調換了一下,OK!

alter table OA_OrgBudget_Detail
   add constraint FK_ORG_RF_OA_ORGBU foreign key (Org , Years)
      references OA_OrgBudget (Org , Years)
         on update cascade on delete cascade
go

原來組合主鍵是區分前後順序的,就像索引查找一樣,用Org , Years就能用索引,用Years, Org的話就用不了索引了

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章