讓我解釋一下這個問題:)存儲過程應該在執行時檢查潛在的問題嗎?
我正在爲一個新產品寫一堆存儲過程。 他們將只會被開發人員編寫的c#應用程序調用,這些開發人員遵循我提供的技術規範。 我不能進入真正的技術規範,所以我會給出一個足夠接近的例子:
在技術規範中,我們不得不將文件數據存儲在幾個專有zip文件中,數據庫存儲每個文件的名稱和位置(例如,每個zip文件一個數據庫)
現在,可以說這個技術規範指出,要執行「操作A」,必須執行以下步驟:
1:計算要添加的文件的空間需求
2:獲取zip文件及其數據的列表基連接字符串(呼叫存儲的過程「GetZips」)
2:找到zip文件內的合適的位置來存儲該文件(調用存儲的過程「GetSuitableFileLocation」針對每個數據庫連接,直到合適的一個被發現)
3:在步驟2中,您將在zip內提供一個開始/結束點以添加您的文件。 調用「AllocateLocationToFile」存儲過程,傳遞這些值,然後將您的文件添加到壓縮文件。
行 - 所以問題是,應該在「AllocateLocationToFile」重新檢查指定的開始/結束點是否仍然是「空閒」,如果不是,引發異常?
在辦公室有一些關於這個問題的討論,雖然我認爲它應該檢查和提高,但其他人認爲它不應該,因爲開發人員不需要立即調用「GetSuitableFileLocation」。
我可以問一些有價值的oppinions嗎?
感謝 - 這幾乎就是我的論點,所以很高興知道我並不孤單,我的想法:) – Sk93 2010-08-04 07:52:01
這實際上更多的是一般性討論,並不僅限於存儲Procs – 2010-08-04 09:03:07
未來,c#可能不會是唯一的訪問方法。 – 2010-08-04 13:16:15