2009-12-01 109 views
0

從表中檢查某些字段是否爲空並從sp返回true或false是否好?還是提取值並檢入代碼很好。SQL最佳實踐

回答

3

通常情況下,設計具有特定的業務層可以驗證字段。例如,在一個n層架構中,如果需要的字段丟失,業務層將驗證並返回一個錯誤。這意味着數據層需要來自業務層的有效數據。

所有數據層必須擔心的是有效操作/檢索數據。

2

另外,如果BLL允許無效數據通過,那麼向表中添加約束將會保護您。儘管它增加了維護和擴展應用程序的複雜性,但當垃圾進入生產數據庫時,忍受的痛苦要大得多。

這是根據您公司/產品/項目的可用技能組合和開發實踐進行的判斷。

+0

完全同意Matt,尤其是在企業環境中,因爲開發人員會拋棄誰知道哪些應用程序插入數據庫並傳遞無效數據。 – Russell 2009-12-01 21:30:11