6
當前在我們的數據庫設計中,我們在兩個實體之間有循環引用。換句話說,我們在每個表中引用了彼此主鍵的外鍵。爲了在這些表中插入記錄,我們需要執行延遲約束檢查。這在SQL Server 2008中可能嗎?我知道Oracle DDL對此有特殊的語法。延遲約束檢查
當前在我們的數據庫設計中,我們在兩個實體之間有循環引用。換句話說,我們在每個表中引用了彼此主鍵的外鍵。爲了在這些表中插入記錄,我們需要執行延遲約束檢查。這在SQL Server 2008中可能嗎?我知道Oracle DDL對此有特殊的語法。延遲約束檢查
在SQL Server中沒有本地方式來執行延遲約束檢查。
可能您最好的選擇是將NULL值插入到第一個表的外鍵列中,直到插入第二條記錄,然後作爲同一事務的一部分更新第一個表中的外鍵列。
我很感興趣 - 您的循環參考的商業原因是什麼?這絕對是一個非凡的要求。
也看看this thread,在同一主題。
@Aaron。我們在同一產品的synonim之間有遞歸引用。 – 2009-06-15 21:07:46