數(shù)據(jù)庫(kù)命名規(guī)范小結(jié)
數(shù)據(jù)庫(kù)命名規(guī)范
規(guī)范數(shù)據(jù)庫(kù)各種對(duì)象的命名規(guī)則。
如果數(shù)據(jù)庫(kù)采用文件系統(tǒng),而不是裸設(shè)備,約定下列命名規(guī)則:
1)數(shù)據(jù)文件以表空間名為開(kāi)始,以.dbf為結(jié)尾,全部采用小寫(xiě)英文字母加數(shù)字命名。如該表空間有多個(gè)數(shù)據(jù)文件,則從第2個(gè)數(shù)據(jù)文件開(kāi)始,在表空間名后加_。
例:對(duì)system表空間的數(shù)據(jù)文件:system.dbf,system_2.dbf
2)對(duì)oracle數(shù)據(jù)庫(kù)的控制文件,用control.ctl來(lái)表示。如control01.ctl,control02.ctl。
3)對(duì)oracle數(shù)據(jù)庫(kù)的日志文件,在線日志文件用redo<組名><文件序列名>.dbf來(lái)表示。其中組名和文件序列名均用2位數(shù)字來(lái)表示。如第一組的兩個(gè)文件表示位redo0101.dbf和redo0102.dbf。歸檔日志用arch_%t_%s.arc來(lái)表示。其中%t和%s均為oracle約定的變量。
2.2.1 數(shù)據(jù)庫(kù)系統(tǒng)表空間
數(shù)據(jù)庫(kù)系統(tǒng)表空間包括system表空間,臨時(shí)表空間,回滾段的表空間。約定下列命名規(guī)則:
1)system表空間由數(shù)據(jù)庫(kù)直接限定,不能進(jìn)行修改。
2)臨時(shí)表空間用temp來(lái)表示。如果有多個(gè)臨時(shí)表空間,從第2個(gè)臨時(shí)表空間開(kāi)始,在temp后面加來(lái)表示。
3)回滾段表空間用undotbs來(lái)表示。如果有多個(gè)回滾段表空間,從第2個(gè)回滾段表空間開(kāi)始,在undotbs后面加來(lái)表示。
數(shù)據(jù)庫(kù)的用戶表空間用ts_<表空間名>來(lái)表示。其中,表空間名分為:
1)數(shù)據(jù)空間:對(duì)于用戶的缺省表空間,用default來(lái)表示。對(duì)于其他的表空間,根據(jù)存放在表空間上的表的類(lèi)別來(lái)表示。如放代碼的表,用code來(lái)表示。放客戶資料的表,用customer來(lái)表示。盡量用一個(gè)表空間來(lái)存放該類(lèi)的表。如果某表特別大,可考慮單獨(dú)使用一個(gè)表空間。
2)索引空間:在相應(yīng)的數(shù)據(jù)表空間的名字前加ind_。如對(duì)用戶缺省表空間的索引空間,用ts_ind_default來(lái)表示。對(duì)代碼表的索引表空間,用ts_ind_code來(lái)表示。
數(shù)據(jù)庫(kù)表的命名采用如下規(guī)則:
1)表名用T_開(kāi)頭,表名長(zhǎng)度不能超過(guò)30個(gè)字符,表名中含有單詞全部采用單數(shù)形式,單詞要大寫(xiě)。
2)多個(gè)單詞間用下劃線(_)進(jìn)行連接。若庫(kù)中有多個(gè)系統(tǒng),表名采用系統(tǒng)名稱+單詞或多個(gè)單詞,系統(tǒng)名是開(kāi)發(fā)系統(tǒng)的縮寫(xiě),如VNET。
3)表中含有的單詞建議用完整的單詞。如果導(dǎo)致表名長(zhǎng)度超過(guò)30個(gè)字符,則從最后一個(gè)單詞開(kāi)始,依次向前采用該單詞的縮寫(xiě)。(如果沒(méi)有約定的縮寫(xiě),則采用該單詞前4個(gè)字母來(lái)表示)。
數(shù)據(jù)庫(kù)表的字段命名采用如下規(guī)則:
1)數(shù)據(jù)庫(kù)字段名全部采用小寫(xiě)英文單詞,單詞之間用”_”隔開(kāi)。字段長(zhǎng)度不能超過(guò)30個(gè)字符。
2)如果該字段是代碼,則在單詞后加_id。
3)如果該字段表示的是時(shí)間,則使用_time為后綴。
數(shù)據(jù)庫(kù)視圖的命名采用如下規(guī)則:
1)視圖名用V_開(kāi)頭,視圖名長(zhǎng)度不能超過(guò)30個(gè)字符。視圖名用大寫(xiě)的英文單詞來(lái)表示。
2)視圖由幾個(gè)表產(chǎn)生就用下劃線(_)連接幾個(gè)表的名,如果表過(guò)多可以將表名適當(dāng)簡(jiǎn)化,但一定要列出所有表名。
數(shù)據(jù)庫(kù)序列的命名采用如下規(guī)則:
序列名用seq_開(kāi)頭,后面跟使用該序列的字段名。如果有幾個(gè)字段用同一個(gè)序列,用下劃線(_)連接幾個(gè)字段的名稱。如果不同表中相同的字段名需要使用不同的序列,則在字段名后加表的特征,用下劃線(_)連接。序列名長(zhǎng)度不能超過(guò)30個(gè)字符。序列名用小寫(xiě)的英文單詞來(lái)表示。
存儲(chǔ)過(guò)程的命名采用如下規(guī)則:
存儲(chǔ)過(guò)程名用Pr_開(kāi)頭,存儲(chǔ)過(guò)程名長(zhǎng)度不能超過(guò)30個(gè)字符。存儲(chǔ)過(guò)程名用小寫(xiě)的英文單詞來(lái)表示。
函數(shù)的命名采用如下規(guī)則:
函數(shù)名用Fu_開(kāi)頭,函數(shù)名長(zhǎng)度不能超過(guò)30個(gè)字符。函數(shù)名用小寫(xiě)的英文單詞來(lái)表示。
觸發(fā)器的命名采用如下規(guī)則:
觸發(fā)器名用Tr_開(kāi)頭,觸發(fā)器名長(zhǎng)度不能超過(guò)30個(gè)字符。觸發(fā)器名用小寫(xiě)的英文單詞來(lái)表示。
主鍵的命名采用如下規(guī)則:
主鍵名用pk_開(kāi)頭,后面跟該主鍵所在的表名。主鍵名長(zhǎng)度不能超過(guò)30個(gè)字符。如果過(guò)長(zhǎng),可對(duì)表名進(jìn)行縮寫(xiě)??s寫(xiě)規(guī)則同表名的縮寫(xiě)規(guī)則。主鍵名用小寫(xiě)的英文單詞來(lái)表示。
外鍵的命名采用如下規(guī)則:
外鍵名用fk_開(kāi)頭,后面跟該外鍵所在的表名和對(duì)應(yīng)的主表名(不含t_)。子表名和父表名自己用下劃線(_)分隔。外鍵名長(zhǎng)度不能超過(guò)30個(gè)字符。如果過(guò)長(zhǎng),可對(duì)表名進(jìn)行縮寫(xiě)??s寫(xiě)規(guī)則同表名的縮寫(xiě)規(guī)則。外鍵名用小寫(xiě)的英文單詞來(lái)表示。
索引的命名采用如下規(guī)則:
1)索引名用小寫(xiě)的英文字母和數(shù)字表示。索引名的長(zhǎng)度不能超過(guò)30個(gè)字符。
2)主鍵對(duì)應(yīng)的索引和主鍵同名。
3)每類(lèi)索引都用_結(jié)束。
4)唯一性索引用uni_開(kāi)頭,后面跟表名。一般性索引用ind_開(kāi)頭,后面跟表名。
5)如果索引長(zhǎng)度過(guò)長(zhǎng),可對(duì)表名進(jìn)行縮寫(xiě)??s寫(xiě)規(guī)則同表名的縮寫(xiě)規(guī)則。
相關(guān)文章
postgres 數(shù)據(jù)庫(kù)中的數(shù)據(jù)轉(zhuǎn)換
postgres8.3以后,字段數(shù)據(jù)之間的默認(rèn)轉(zhuǎn)換取消了。如果需要進(jìn)行數(shù)據(jù)變換的話,在postgres數(shù)據(jù)庫(kù)中,我們可以用"::"來(lái)進(jìn)行字段數(shù)據(jù)的類(lèi)型轉(zhuǎn)換。2009-07-07SQL數(shù)據(jù)庫(kù)與oracle數(shù)據(jù)庫(kù)鏡像有什么不同對(duì)比
數(shù)據(jù)庫(kù)鏡像是將數(shù)據(jù)庫(kù)事務(wù)處理從一個(gè)數(shù)據(jù)庫(kù)移動(dòng)到不同環(huán)境中的另一個(gè)數(shù)據(jù)庫(kù)中。鏡像的拷貝是一個(gè)備用的拷貝,不能直接訪問(wèn),它只用在錯(cuò)誤恢復(fù)的情況下。2010-03-03openGauss數(shù)據(jù)庫(kù)共享存儲(chǔ)特性概述
這篇文章主要介紹了openGauss數(shù)據(jù)庫(kù)共享存儲(chǔ)特性簡(jiǎn)介,本特性提供主備機(jī)共享一份存儲(chǔ)的能力,實(shí)現(xiàn)基于磁陣設(shè)備的主備共享存儲(chǔ)HA部署形態(tài),可選通過(guò)OCK RDMA提升備機(jī)實(shí)時(shí)一致性讀能力,需要的朋友可以參考下2023-02-02SQL之left join、right join、inner join的區(qū)別淺析
這篇文章主要介紹了SQL之left join、right join、inner join的區(qū)別淺析,本文講解了它們的區(qū)別并給出了實(shí)例,需要的朋友可以參考下2015-02-02對(duì)分區(qū)表進(jìn)行alter-switch時(shí)遇到的錯(cuò)誤
將一個(gè)表的數(shù)據(jù)加入分區(qū)表中,可以通過(guò)如下步驟進(jìn)行2009-07-07Maven nexus 安裝nexus私服出現(xiàn)的問(wèn)題和解決辦法
本文主要介紹安裝nexus私服的時(shí)候出現(xiàn)問(wèn)題的解決辦法,這里整理了兩種問(wèn)題并詳細(xì)說(shuō)明了解決辦法,有需要的朋友可以參考下2016-08-08談?wù)剶?shù)據(jù)庫(kù)的字段設(shè)計(jì)的幾個(gè)心得
今天小編就為大家分享一篇關(guān)于談?wù)剶?shù)據(jù)庫(kù)的字段設(shè)計(jì)的幾個(gè)心得,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-03-03Navicat保存查詢和查詢文件放在哪個(gè)位置最佳方法推薦
這篇文章主要介紹了Navicat保存查詢和查詢文件放在哪個(gè)位置,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-08-08程序員應(yīng)該知道的數(shù)據(jù)庫(kù)設(shè)計(jì)的兩個(gè)誤區(qū)
在幾乎所有的企業(yè)級(jí)應(yīng)用程序中,包括各種MIS、ERP、CRM等等,都會(huì)使用數(shù)據(jù)庫(kù),這樣的好處是顯而易見(jiàn)的,很容易地實(shí)現(xiàn)了數(shù)據(jù)層和業(yè)務(wù)邏輯層的分離,而且對(duì)于性能的優(yōu)化也在一定程度上提供了便利。2010-07-07