我需要在我們的某個數據庫表中創建一個唯一的列,並且我們希望完全刪除表中的任何重複項。然而,有一個障礙,那就是有一堆依賴於其他表的影響。刪除FK行時可以更改外鍵ID嗎?
例如,假設我們有如下關係:
------------------- -------------------
* Customer * * Order *
------------------- -------------------
* ID * * ID *
* Name * * CustomerID *
* Address * * Item *
------------------- -------------------
相當明顯的關係存在 - 一個訂單需要客戶ID,這是一個外鍵。所以我們不能刪除客戶並保留訂單數據。
在這個例子中,我完全可以丟失多餘的客戶數據,但爲了以後的參考,我想將訂單中的客戶ID更改爲「已刪除的客戶」的客戶ID。
有沒有什麼方法可以說「刪除這個,如果有外鍵約束,改爲將該CustomerID改爲該ID」? DB是MS SQL 2005.