当前位置:文档之家› 数据库设计命名规范

数据库设计命名规范

数据库设计命名规范
版本: V1.0
日期: 2015-11-30
拟定:
审核:
科大讯飞教育产品事业部
修订记录
目录
1目的 (2)
2数据库名命名规范 (3)
3数据库表命名规范 (3)
4表字段命名规范 (3)
5表设计规范 (4)
6索引命名规范 (5)
7主键、外键命名规范 (5)
1目的
此规范包括数据库名命名规范、表名命名规范、字段名命名规范、表设计规范;适用对
象开发、设计、测试人员。

2数据库名命名规范
1)数据库用户名应包含“项目编号+”_”+”子系统编号”。

如:”epsp_safety”
2)数据库名均以英文小写与下划线组合。

3)数据库字符编码:utf8。

3数据库表命名规范
1)数据库表的命名以是名词形式且都为小写。

2)表名前应该加上前缀,表的前缀一个用系统或模块的英文名称缩写,前
缀全部小写。

如:
3)数据库表名应该有意义,并且易于理解,最好使用可以表达功能的英文
单词或缩写,如果用英文单词表示,建议使用完整的英文单词。

4)表名不可以太长,最好不要超过3个英文单词长度(22个字母)。

5)在数据库表命名时应该用英文单词的单数形式,如员工表命名:应该为
employee而不是employees。

6)如果是后台表命名时应该在表名基础上加上后缀 _b或_base。

7)在表创建完成前,应该为表添加表的注释。

4表字段命名规范
1)字段名为小写。

2)字段名为有意义的单词,或单词的缩写。

3)如果字段由几个单词组成,则单词间用下划线(“_”)分割。

4)字段名限制在30个字符内。

当字段名超过30字符时,可用缩写来减少
字段名的长度,如information->info;address -> addr等。

5)系统中所有属于内码,即仅用于标识唯一性和程序内部用到的标识性字
段,字段名称建议取为id,采用类型为整型或长整型。

6)系统中属于是业务内的编号字段,代表一定业务信息,建议字段命名为
code ,如工作单编号。

7)不要在数据库表字段(列名)中包含数据类型,如:datetime。

8)不要在数据库表字段(列名)命名时重复表名,可以使用表名首字母或
缩写(不包含数据库表名前缀)。

9)不要在数据库表字段(列名)命名时,使用数据库关键字,如:name,
time ,datetime,password等。

5表设计规范
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)建议在大多数表中含有如下字段
4)字段的描述
a)字段必须填写描述信息(注释)
b)尽量遵守第三范式的标准(3NF)
c)表内的每一个值只能被表达一次(列名不重复)表内的每一行都应
当被唯一的标示(标识唯一性,如自动增长主键)
d)表内不应该存储依赖于其他键的非键信息
6索引命名规范
1)索引须按照IDX_table_<column>_<column>,其中<table>是建立索引的
表名,<column>是建立索引的字段名。

2)索引名限制在30个字符内。

当索引名超过30字符时,可用缩写来减少
索引名的长度,如description→desc;information →info;address → addr等。

7主键、外键命名规范
1)主键按照PK_<table>的规则命名,其中<table>为数据库表名。

2)唯一键按照UK_<table>_<column>的规则命名,其中<table>为数据块表
名,<column>为字段名。

3)外键按照FK_<pppp>_<cccc>_<nn>的规则命名,其中<pppp>为父表名,
<cccc>为子表名,<nn>为序列号。

4)具体命名前缀规则可参考下图。

相关主题