SQL Server存儲(chǔ)過(guò)程命名方法
方法一
A、“表”單數(shù)形式命名
語(yǔ)法:[proc]_[MainTableName]_([FieldName]_)[Action]
-- 創(chuàng)建/刪除/更新/等操作采用單數(shù)表形式命名 proc_OfferThread_Create proc_OfferThread_Update proc_OfferThread_Delete
其他輔助操作: proc_OfferThread_Status_Update proc_OfferThread_PrevNext
proc_OfferThread_Get; (如果不用ByID指明則默認(rèn)是ID)
B、“表”復(fù)數(shù)形式命名
語(yǔ)法:[proc]_[MainTableNames]_[Action(Condition)]
-- 讀取列表或分頁(yè)集合采用復(fù)數(shù)表形式 proc_OfferThreads_Get proc_OfferThreads_GetByName; (如果不用By指明則默認(rèn)是ID)
proc_OfferThreads_Delete; (默認(rèn)批量按用戶編號(hào)刪除) proc_OfferThreads_DeleteByUserName (批量按用戶登錄名刪除) proc_OfferThreads_DeleteByName (批量按名稱(chēng)刪除)
proc_OfferThreads_GetThreadSet (讀取分頁(yè))
基本原則: ------------------------------------------------------------- 單數(shù)表名:表示只是針對(duì)一條記錄進(jìn)行操作; 例如:記錄的讀取、加入、更新、刪除;
復(fù)數(shù)表名:表示會(huì)對(duì)多條記錄進(jìn)行操作;例如:列表的讀取、
優(yōu)點(diǎn):一個(gè)動(dòng)詞,可能因?yàn)楸韽?fù)數(shù)或單數(shù)的區(qū)別而有不同的含義;如果不區(qū)分復(fù)數(shù)或單數(shù)表名,則同一個(gè)動(dòng)詞可能會(huì)產(chǎn)生岐義;
方法二
注釋?zhuān)杭偃绱鎯?chǔ)過(guò)程以sp_ 為前綴開(kāi)始命名那么會(huì)運(yùn)行的稍微的緩慢,這是因?yàn)镾QL Server將首先查找系統(tǒng)存儲(chǔ)過(guò)程,所以我們決不推薦使用sp_作為前綴。
存儲(chǔ)過(guò)程命名語(yǔ)法:
[proc] [MainTableName] By [FieldName(optional)] [Action]
(1) 所有的存儲(chǔ)過(guò)程必須有前綴'proc'. 所有的系統(tǒng)存儲(chǔ)過(guò)程都有前綴'sp_', 推薦不使用這樣的前綴因?yàn)闀?huì)稍微的減慢。(2) 表名就是存儲(chǔ)過(guò)程訪問(wèn)的對(duì)象。(3) 可選字段名就是條件子句。 例如:procClientByCoNameSelect, procClientByClientIDSelect(4) 最后的行為動(dòng)詞就是存儲(chǔ)過(guò)程要執(zhí)行的任務(wù): 如果存儲(chǔ)過(guò)程返回一條記錄那么后綴是:Select 如果存儲(chǔ)過(guò)程插入數(shù)據(jù)那么后綴是:Insert 如果存儲(chǔ)過(guò)程更新數(shù)據(jù)那么后綴是:Update 如果存儲(chǔ)過(guò)程有插入和更新那么后綴是:Save 如果存儲(chǔ)過(guò)程刪除數(shù)據(jù)那么后綴是:Delete 如果存儲(chǔ)過(guò)程更新表中的數(shù)據(jù) (ie. drop and create) 那么后綴是:Create 如果存儲(chǔ)過(guò)程返回輸出參數(shù)或0,那么后綴是:Output
從前的寫(xiě)法:
查詢:procGetRate 或 sp_GetRate添加:procEmailMergeAdd
現(xiàn)在的寫(xiě)法:
查詢:procClientRateSelect添加:procEmailMergeInsert
