我有一個與sql server中的數據相關的問題。在我的數據庫中,一些約束沒有被啓用,即他們沒有被檢查,經過一段時間的處理後,我們發現這個問題,父行可以刪除而不刪除子,這是一個問題。我使用的查詢如何驗證sql server中的數據?
ALTER TABLE tbl_name CHECK CONSTRAINT ALL
以上查詢是沒有任何錯誤,在該數據庫中所有表執行啓用所有的約束在數據庫中。但是我的擔心是它是否會起作用,如果它能夠處理現有的數據,那麼父表數據已被刪除的數據會發生什麼情況。
我想知道有沒有什麼方法可以驗證其父記錄不存在於整個數據庫中的此類數據數據。大約有270 constraint
包含FOREIGN KEY AND UNIQUE KEY
。我不想去手動選項。
請幫我一把。
Damien_The_Unbeliever嗨,你能告訴我兩個ALTER TABLE tbl_name檢查約束WITH CHECK CHECK約束中的所有 和ALTER TABLE tbl_name ALL –
正如我在第二句說的區別 - 不同的是,第一個將*不*驗證表中的任何現有數據。 –
謝謝這是一個很好的幫助.. –