iThome online | iThome Blog | iThome周刊訂閱

載入中...

scottchen

IT邦好手
1級

資料庫物件命名原則?
標籤:資料庫

在設計資料庫時常常會碰到Table,Column,View,Index,Function...命名的問題,因為每個DBA的習慣不同,造成有很多不一致的情況,例如大小寫、縮寫、分隔符號、單複數、prefix等,請問有沒有一套通用且容易使用的資料庫物件命名原則?



收到書籤:發佈到twitter      
解決時間:2008-09-16 14:15:01
發問時間:2008-09-02 14:10:04

▼ ADVERTISEMENT ▼

最佳解答(網友推薦)
14
iT邦守護神

回答:lukechang ( IT邦初學者1級 )

時間:2008-09-02 15:39:39

可以考慮統一用匈牙利命名法

http://blog.xuite.net/shian5/CodingStyle/3617347
有寫過程式的人應該都會有聽過所謂的匈牙利命名法,這是由微軟的程式設計師 Charles Simonyi 所發明的,幾乎在所有程式語言的入門書都會提到。依照書中所寫,所謂的匈牙利命名法便是在變數前面加上該變數的型別,例如:
int iCount;
char szName[100];
整數型別就加上個 "i";以 NULL 字元結尾的字串就加上個 "sz"。C 語言中的基本型別並不多,因此對於程式設計師來說,使用這個命名法也不會太麻煩。隨著 Windows 的普及,在 Win32 中大量導入 Handle 的概念,視窗有視窗的 handle(HWND),Process 有 Process 的 handle(HANDLE)。為了要區別這些變數,開始有人建議在這些變數也加上前綴字元,於是就出現這樣的變數:
HWND hwndMainWin;
HANDLE hProcess;
好吧,就算是再加入這幾種型別也還在程式設計師的記憶體範圍內,大家也都還能接受,於是匈牙利命名法著實風光了一陣子。然而隨著 C++ 的出現,匈牙利命名法受到史無前例的挑戰。

參考資料:http://blog.xuite.net/shian5/CodingStyle/3617347

[-隱藏]

回應

jamesjan 說:

Yes, 匈牙利命名法確實是一個依歸
當初在參與專案開發時,我們也是依據其準則自訂變數命名規則

2008-09-03 12:30:46

資料庫物件命名原則?
回答:adwings( IT邦初學者9級 )
時間:2008-09-02 14:28:31
9
我的習慣是看資料庫建構的時候看該資料庫是拿來做甚麼用,
就給予甚麼英文名稱
大部分都是給小寫~但是我喜歡駝峰式寫法~大概是寫程式的習慣一起帶過去
(大部分看到好像資料庫建立都是全小寫居多)
但是大部分的人命名原則都不太一樣~所以...這種事情可以彼此有個共識比較好

給你參考一下

參考資料:自己經驗

回答:cheng( IT邦初學者7級 )
時間:2008-09-03 07:55:21
7
資料庫的命名一般都是一設計師習慣
沒有一定的,但是例如基本上常用的幾個都差不多
例如人員、計數、部門、職稱等等一般都相同
除非就是那些公司內較為不同的設計與名稱
才回依照公司需求或是設計師來命名
畢竟有時候不想讓USER或是閱讀者知道資料庫名稱
所以隨意取一個名字
回答:jamesjan( IT邦好手1級 )
時間:2008-09-03 12:37:20
9
我自己的習慣是在 View 方面以 vw_ 為 prefix
Trigger -> tri_
Stored Procedure -> sp_
Index -> idx_
Table -> tbl_ (比較少用,通常以其命名為主,不做區分,因為還是以 Table 為主體)
Function -> fn_
User Defined Type -> udt_

這樣的好處是,您在程式中有撰寫 SQL Statement時,可以很清楚知道他是放在什麼位置的
我的 RDBMS 通常為 MS SQL Server
通常如果是專案所需,或有跨 Database 的 issue
還會將專案代碼帶入 物件的命名規則中
如 專案代碼 wms 我要讓別的專案使用到我的 table 時
我會在 Table 上命名 wms_Cell_Code
這樣就可以知道這個 Table 是在 WMS 這個 Database 中2008-09-03 12:49:26 補充
Sorry, 有一部分的資料貼不上來
請至個人 iThome Blog 中查看 Table 的命名規則
http://www.ithome.com.tw/plog/index.php?op=ViewArticle&articleId=19362&blogId=11352008-09-03 12:56:55 補充

回應

請填寫您的回應,長度限為1,000個字,回應不計點數,也不限使用次數



 

檢舉違規

違規事項:

*補充檢舉理由(可省略),字數不可超過100字

推薦

推薦理由:


*給回答者的鼓勵(可不填),字數不可超過100字

▼ ADVERTISEMENT ▼

熱門標籤

 cisco   crystal   exchange   it   java   javascript   linux   m-power   mail   microsoft   msnlib   msnp15   msnsdk   msn機器人   mysql   nas   oracle   outlook   pmi   pmp   raid   report   sap   server   smartquery   sql   vista   windows   xp   倍力   倍力資訊   免費軟體   國際專案管理師   報表   專案管理   微軟   有話大聲說   活動   省錢   網路   網路儲存   網路管理   網頁安全   網頁設計   資安   資料庫   資訊安全   防毒軟體   2003   2008