首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

SQL Server 預存程序命名規範:兩大主流方法與最佳實務比較

     編輯:關於SqlServer

前言

統一的命名規範能大幅提升程式碼可讀性與維護效率。本文整理兩種主流命名法,並說明避免使用 sp_ 前綴的效能考量。

方法一:單複數區分操作對象

語法規則

[proc]_[MainTableName]_([FieldName]_)[Action]   -- 單數:單筆操作
[proc]_[MainTableNames]_[Action(Condition)]      -- 複數:多筆/集合操作

單數表名範例(單筆 CRUD)

proc_OfferThread_Create
proc_OfferThread_Update
proc_OfferThread_Delete
proc_OfferThread_Status_Update
proc_OfferThread_PrevNext
proc_OfferThread_Get          -- 預設依 ID 查詢

複數表名範例(列表/分頁/批次)

proc_OfferThreads_Get
proc_OfferThreads_GetByName
proc_OfferThreads_Delete                  -- 批次依使用者編號刪除
proc_OfferThreads_DeleteByUserName
proc_OfferThreads_DeleteByName
proc_OfferThreads_GetThreadSet            -- 分頁查詢

核心原則

  • 單數表名 = 單筆記錄操作(讀/增/改/刪)
  • 複數表名 = 多筆記錄操作(列表/分頁/批次)
  • 優勢:同一動詞因單複數產生不同語義,避免歧義

方法二:動詞後綴標準化

前綴規範

  • 統一使用 proc_ 前綴
  • 禁止使用 sp_:SQL Server 會優先搜尋系統預存程序,導致效能微幅下降

命名語法

[proc] [MainTableName] By [FieldName(optional)] [Action]

動詞後綴對照表

操作類型後綴範例
查詢單筆SelectprocClientByCoNameSelect
新增資料InsertprocEmailMergeInsert
更新資料UpdateprocClientUpdate
新增或更新SaveprocOrderSave
刪除資料DeleteprocLogDelete
重建表結構CreateprocTempTableCreate
回傳輸出參數OutputprocCalcTotalOutput

新舊寫法對比

-- 舊
procGetRate, sp_GetRate, procEmailMergeAdd

-- 新
procClientRateSelect, procEmailMergeInsert

建議採用策略

結合兩法優點:採用 proc_ 前綴 + 單複數區分 + 標準動詞後綴,並明確記錄專案命名規範文件,納入 Code Review 檢核項目。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved