数据库命名规范(表、字段名)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数据库命名规范(表、字段名)

一.实体和属性的命名

1.常用单词已经进行了缩写,在命名过程当中,根据语义拼凑缩写即可。注意,由于ORCAL 数据库会将字段名称统一成大写或者小写中的一种,所以要求加上下划线

举例:

定义的缩写 Sales: Sal 销售;

Order: Ord 订单;

Detail: Dtl 明细;

则销售订单名细表命名为:Sal_Ord_Dtl;

2.如果表或者是字段的名称仅有一个单词,那么建议不使用缩写,而是用完整的单词。举例:

定义的缩写 Material Ma 物品;

物品表名为:Material, 而不是 Ma.

但是字段物品编码则是:Ma_ID;而不是Material_ID

3.所有的存储值列表的表前面加上前缀Z

目的是将这些值列表类排序在数据库最后。

4.所有的冗余类的命名(主要是累计表)前面加上前缀X

冗余类是为了提高数据库效率,非规范化数据库的时候加入的字段。或者表

5.关联类通过用下划线连接两个基本类之后,再加前缀R的方式命名,后面按照字母顺序罗列两个表名或者表名的缩写。

关联表用于保存多对多关系。

如果被关联的表名大于10个字母,必须将原来的表名的进行缩写。如果没有其他原因,建议都使用缩写。

举例:表Object与自身存在多对多的关系,则保存多对多关系的表命名为:R_Object;

表 Depart和Employee;存在多对多的关系;则关联表命名为R_Dept_Emp

6.每一个表都将有一个自动ID作为主健,逻辑上的主健作为第一组候选主健来定义,如果是数据库自动生成的编码,统一命名为:ID;如果是自定义的逻辑上的编码则用缩写加“ID”的方法命名。

举例:销售订单的编号字段命名:Sal_Ord_ID;如果还存在一个数据库生成的自动编号,则命名为:ID。

7.所有的属性加上有关类型的后缀,类型后缀的缩写定义见文件《类型后缀缩写定义》,注意,如果还需要其它的后缀,都放在类型后缀之前。

二.关系的命名

关系的命名基本上按照;如有特殊情况,可以灵活处理.

[must/may/can/should][verb/verb+prep][a/many/exatly num][or a/many]的结构命名三.域的命名

四.触发器的命名

五.有关于默认的几点说明

1.严格依赖关系的主细表,主表的后缀Main可以不写。

2.数据类型是文本的字段,类型后缀TX可以不写。

3.有些类型比较明显的字段,可以不写类型后缀。

4.非常明显的关系,可以不写

///////////////////另一文章//////

数据库设计规范

数据库表命名规范

此规范包括表名命名规范,索引命名规范,外键命名规范和字段名命名规范。

表名命名规则

数据库表的命名以是名词的复数形式且都为小写,如cities, categories, friends等等如果表名由几个单词组成,则单词间用下划线("_")分割,如

subscribed_pois,poi_categories等

表名尽量用全名

表名限制在30个字符内。当表的全名超过30字符时,可用缩写来减少表名的长度,如description --> desc;information --> info;address --> addr等

表字段名命名规则

字段名为小写

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

如果字段由几个单词组成,则单词间用下划线("_")分割,如client_id,post_code等

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

索引命名规则

索引须按照IDX_table_<column>_<column>,其中<table>是建立索引的表名,<column>是建立索引的字段名

索引名限制在30个字符内。当索引名超过30字符时,可用缩写来减少索引名的长度,如description --> desc;information --> info;address --> addr等

主键、外键命名规则

主键按照PK_<table>的规则命名,其中<table>为数据库表名

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

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

数据库规范化设计的一些基本要求:

一、表中应该避免可为空的列。

虽然表中允许空列,但是,空字段是一种比较特殊的数据类型。数据库在处理的时候,需要进行特殊的处理。如此的话,就会增加数据库处理记录的复杂性。当表中有比较多的空字段时,在同等条件下,数据库处理的性能会降低许多。

解决方法:一是通过设置默认值的形式,来避免空字段的产生。二是若一张表中,允许为空的列比较多,接近表全部列数的三分之一。而且,这些列在大部分情况下,都是可有可无的。若数据库管理员遇到这种情况,建议另外建立一张副表,以保存这些列。

二、表不应该有重复的值或者列。

三、表中记录应该有一个唯一的标识符。

四、数据库对象要有统一的前缀名。

五、尽量只存储单一实体类型的数据。

六、尽量符合数据库的几个范式。

设计规范

所有字段在设计时,除以下数据类型timestamp、image、datetime、smalldatetime、uniqueidentifier、binary、sql_variant、binary 、varbinary外,必须有默认值。字符型的默认值为一个空字符值串’’;数值型的默认值为数值0;逻辑型的默认值为数值0;其中:系统中所有逻辑型中数值0表示为“假”;数值1表示为“真”。

datetime、smalldatetime类型的字段没有默认值,必须为NULL。

当字段定义为字符串形时建议使用varchar而不用nvarchar。

字段的描述

数据库中每个字段的描述(Description)如下:

表内的每一个值只能被表达一次

表内的每一行都应当被唯一的标示

表内不应该存储依赖于其他键的非键信息

如果字段事实上是与其它表的关键字相关联而未设计为外键引用,需建索引。

相关文档
最新文档