mysql 欄位名稱規範 資料庫表及字段命名規範

2021-10-17 22:47:05 字數 3191 閱讀 6707

資料庫設計表及字段命名規範(我整理的,望大家多多提建議)

1.資料庫表命名規範:

(1)表名前應該加上字首,表的字首乙個用系統或模組的英文名稱縮寫,字首全部大寫或首字母大寫,表名中包含的單詞首字母大寫。

(2)資料庫表名應該有意義,並且易於理解,最好使用可以表達功能的英文單詞或縮寫,如果用英文單詞表示,建議使用完整的英文單詞。

(3)表名不可以太長,最好不要超過3個英文單詞長度(22個字母)。

(4)在資料庫表命名時應該用英文單詞的單數形式,如員工表命名:應該為employee而不是employees .

(5)如果是後台表命名時應該在表名基礎上加上字尾

_b(back首字母)

(6)在表建立完成前,應該為表新增表的注釋。

2.表字段命名規範:

(1)資料庫表字段應該是有意義而且易於理解的,最好是能夠表達字段含義的英文本母

(有人認為如果用英文單詞作為字段,因為翻譯工具不同,而字段不統一建議使用漢語拼音首字母縮寫

;有人認為用漢語拼音縮寫看起來不直觀,老半天也不知道到底這個欄位是幹什麼的)

(2)系統中所有屬於內碼,即僅用於標識唯一性和程式內部用到的標識性欄位,欄位名稱建議取為id,採用型別為整型或長整型.

(3)系統中屬於是業務內的編號字段,代表一定業務資訊,建議字段命名為

code ,如工作單編號

wf_code .

(4)不要在資料庫表字段(列名)中包含資料型別,如:datetime

(5)不要在資料庫表字段(列名)命名時重複表名,可以使用表名首字母(不包含資料庫表名字首)

注意:不要在資料庫表字段(列名)命名時

不建議使用資料庫關鍵字,如:name,time ,datetime password等

3.表設計規範:

(1)所有欄位在設計時,除以下資料型別timestamp、image、datetime、smalldatetime、uniqueidentifier、binary、sql_variant、binary、varbinary外,必須有預設值。字元型的預設值為乙個空字元值串』』;數值型的預設值為數值0;邏輯型的預設值為數值0;

其中:系統中所有邏輯型中數值0表示為「假」;數值1表示為「真」。

datetime、smalldatetime型別的字段沒有預設值,必須為null。

(2)當欄位定義為字串形時建議使用varchar而不用nvarchar。

注:在mysql5.0以上的版本中,varchar資料型別的長度支援到了65535,也就是說可以存放65532個位元組的資料,起始位和結束位占去了3個

位元組。(3)建議在大多數表中(如工作單),應都有以下字段:

欄位名說明型別預設值

creatorid建立者int

預設值為

createdtime建立時間datetime

預設值為null

(4)欄位的描述

a.欄位必須填寫描述資訊(注釋)

b.盡量遵守第三正規化的標準(3nf)

表內的每乙個值只能被表達一次(列名不重複)

表內的每一行都應當被唯一的標示(標識唯一性,如

自動增長

主鍵)表內不應該儲存依賴於其他鍵的非鍵資訊

(5)加索引規則

a.表建好後資料庫自動為表生成乙個索引(為

自動增長的列生成唯一索引),如果在對這列新增索引,資料庫會給乙個警告,內容大概是,已經為這列新增了索引,建議修改索引名稱和自動增長列名保持一致,為了方便使用。

b.如果在新增索引時,建議索引名稱和資料庫列名保持一致,為了方便使用

c.如果字段事實上是與其它表的關鍵字相關聯而未設計為外來鍵引用,需建索引。

d.如果欄位與其它表的字段相關聯,需建索引。

e.如果欄位需做模糊查詢之外的條件查詢,需建索引。

f.除了主關鍵字允許建立簇索引外,其它欄位所建索引必須為非簇索引。

4.儲存過程命名規範

(1)存貯過程的命名請遵循以下命名規範:usp_ +系統模組縮寫(與表字首類似)+_ +功能標識+代表存貯過程操作的主要表名(不帶字首)或功能的英文單詞或英文單詞縮寫。

如果乙個存貯過程只對乙個表進行操作,建議存貯過程的名稱就用存貯過程所操作的表的表名(不帶字首)。這樣有利於根據表名找到相應的存貯過程。例如:

用於新增的存貯過程usp_message_add_model

用於修改的存貯過程usp_ message_upt_model

用於刪除的存貯過程usp_ message_del_ modele

注:usp是userstored procedure

縮寫5.儲存過程設計規範

在存貯過程中必須說明以下內容:

(1)目的:說明此存貯過程的作用。

(3)建立日期:建立存貯過程時的日期。

(4)修改記錄:

修改記錄需包含修改順序號、修改者、修改日期、修改原因,修改時不能直接在原來的**上修改,也不能刪除原來的**,只能先將原來的**注釋掉,再重新增加正確的**。修改順序號的形式為:log1,log2,log3。。。,根據修改次數順序增加,同時在注釋掉的原來的**塊和新增的正確**塊前後註明修改順序號。

(5)對存貯過程各引數及變數的中文註解。

6.檢視命名規範

檢視的命名請遵循以下命名規範:uv _ +系統模組縮寫(與表字首類似)+_ +功能標識+代表檢視查詢的主要表名(不帶字首)或功能的英文單詞或英文單詞縮寫。

如果乙個檢視只對乙個表進行查詢,建議檢視的名稱就用檢視所查詢的表的表名(不帶字首)。這樣有利於根據表名找到相應的檢視。

注:uv是userview縮寫

7.檢視設計規範

在檢視中必須說明以下內容:

(1)目的:說明此檢視的作用。

(2)建立者:首次建立此檢視的人的姓名。在此請使用中文全名,不允許使用英文簡稱。

(3)修改者、修改日期、修改原因:如果有人對此檢視進行了修改,則必須在此檢視的前面加註修改者姓名、修改日期及修改原因。

(4)對檢視各引數及變數的中文註解

8.觸發器命名規範

insert觸發器加'_i',delete觸發器加'_d',update觸發器加'_u'

9.觸發器設計規範

在檢視中必須說明以下內容:

(1)目的:說明此觸發器的作用。

(2)建立者:首次建立此觸發器的人的姓名。在此請使用中文全名,不允許使用英文簡稱。

(3)修改者、修改日期、修改原因:如果有人對此觸發器進行了修改,則必須在此觸發器的前面加註修改者姓名、修改日期及修改原因。

(4)對觸發器各引數及變數的中文註解

資料庫命名規範(表 欄位名)

資料庫命名規範 一 實體和屬性的命名 1 常用單詞已經進行了縮寫,在命名過程當中,根據語義拼湊縮寫即可。注意,由於orcal資料庫會將欄位名稱統一成大寫或者小寫中的一種,所以要求加上下劃線 舉例 定義的縮寫 sales sal 銷售 order ord 訂單 detail dtl 明細 則銷售訂單名...

資料庫命名規範(表 欄位名)

資料庫命名規範 一 實體和屬性的命名 1 常用單詞已經進行了縮寫,在命名過程當中,根據語義拼湊縮寫即可。注意,由於orcal資料庫會將欄位名稱統一成大寫或者小寫中的一種,所以要求加上下劃線 舉例 定義的縮寫 sales sal 銷售 order ord 訂單 detail dtl 明細 則銷售訂單名...

規範資料庫表字段大小寫 小寫欄位名全部更改為大寫

公司的資料庫規範sql server欄位名稱需要大寫,最近檢查資料庫看到有些欄位名稱是小寫。於是需要把小寫的欄位名稱更改為大寫,先找出下面的包含小寫的sql資料表。select c.name as colname,t.name as tablename from sys.columns c join...