0
我有一個有兩個表的數據庫,PROCESS(PK Process_Id)
and PROCESS_STAGE(PK Stage_Id, FK Process_Id)
。如何在Microsoft SQL Server Management Studio中實施關係型外鍵約束?
至少我覺得我已經設置 - 外鍵關係對話框我有
- 外鍵基表:PROCESS_STAGE,
- 外鍵列:
Process_Id
, - 主要/唯一密鑰基表:PROCESS,
- 主要/唯一密鑰列:
Process_Id
。
我還設置了強制複製並強制外鍵約束爲'是'。
但我仍然可以做以下的事情打破了這種關係:
- 刪除項目從過程具有不同於 PROCESS_STAGE引用
什麼我需要做的改正這個?
謝謝!
我也試試這個@gbn,但我一直收到此錯誤: 消息547,級別16,狀態0,第1行 ALTER TABLE語句與FOREIGN KEY約束「FK_PROCESSTAGE_PROCESS」衝突。衝突發生在數據庫「A_A」,表「dbo.process」,列'Process_Id'。 我只在數據庫的表樹中看到名爲'dbo。*'的表,所以我想這意味着我應該使用正確的表? – deed02392
@ deed02392:如果你只有dbo,那麼這很好。我懷疑你使用GUI時有同樣的錯誤。這將發出類似於我上面所做的SQL。你的FK失敗,因爲它永遠不會被創建 – gbn
我不明白?它似乎暗示它不能創建一個,因爲它已經存在,但我沒有看到它的任何地方,如果它確實存在,那麼我不應該刪除破壞關係的記錄? – deed02392