冒着被稱爲傻瓜的風險,我想知道你在維護MS SQL DB中的關係約束時的想法。遷移DB:保持關係約束?
我正在將系統從ASP遷移到.NET環境中。這帶來了業務對象和其他分層編碼技術,用於從用戶/ API抽象數據庫。新應用程序在實體框架DAL之上有一個確定的API。
舊數據庫中的應用程序數據庫很大,其中一些表的目的將更改爲以文件等形式開始包含二進制數據。我非常希望將這些數據拆分爲單獨的數據庫在磁盤空間非常貴的客戶站點方便管理。
表之間的保留關係約束是否有任何價值?
假設:
- 代碼進行測試
- 凡關係是很重要的,執行事務
- 訪問DB是僅通過API,第三方等訪問不支持下進行的。
理由繼續限制:
- 強制執行的數據結構
- 連接是更快?
- 查詢計劃的幫助?
原因,除去新.NET版本的限制:
- 人們可以假設API/BIZ邏輯將管理關係,如父/子。
- 減少機會數據庫的部分獨立出來到其他目錄
- 難道我相信,SQL有在做其他檢查糾正(系統使用一個插件架構,大多數表可以獨立運行,內置) INSERT約束,當DB上面的API正在管理這個時,這可能是不必要的?
我呼籲社會各界把我的問題反正在情況下,我已經錯過了愚蠢的事情,或者這只是一個等待發生......
非常感謝,
彌敦道
順便說一句,沒有這樣的事情愚蠢的問題,只有愚蠢的答案。所以不要擔心被稱爲傻瓜,不會(或至少不應該)發生。實話說;我也問過自己這個約束 - 問題。 – pyrocumulus 2009-04-29 10:41:11
的確,你是對的。人們擔心僧侶的憤怒! 還要感謝這個鏈接,它沒有出現在搜索結果中 - 即使是在我的問題中輸入時也是出色的AJAXy搜索。 – 2009-04-29 11:07:08