我們有一個數據庫,其中聯繫人只是軟刪除,即我們設置了一個名字刪除爲真。這個API處理這個問題,但有時你需要直接對數據庫運行查詢,並且很容易忘記這一點,並導出實際刪除的聯繫人。這不是一個大問題,因爲我已經習慣了系統,但是如果我正在度假,或者如果有其他人要接管,我想確保這些行不會被返回 - 除非特別要求。這給我們留下了以下兩個問題:你能告訴SQL Server不要返回特定的行嗎?
有沒有辦法告訴(在這種情況下,2005年)的SQL Server例如,如果一個位被設置爲true,不返回行?
如果是這樣,如果特別要求(如果bit ='true'),這些行仍可以被檢索嗎?
我會建議相同的。如果可行,創建一個視圖。這也消除了應用程序的責任來過濾掉已刪除的記錄。 – Pete 2009-09-15 08:08:24
不幸的是,在這一點上我不認爲這是一種選擇 - 我有一種感覺,這應該早在設計階段就已經完成了。但這對未來的項目很有用。 – 2009-09-15 08:12:48
那麼如果你還在開發中,你可以考慮將所有包含已刪除行的表重新命名爲tablename_base或類似的東西。這可以很好地工作,不需要更改代碼。這顯然需要一些測試。 – 2009-09-15 08:16:57