当前位置: 首页 > 数据库 > 数据库基础与原理 > 正文

数据库设计规范:命名规范

时间:2014-12-05

命名规范

说明:指数据库对象如表(TABLE)、序列(SEQUENCE)、过程(PROCEDURE)、触发器(TRIGGER)等的命名约定。

1. 基本命名原则

(1)规则1:命名使用具有意义的英文词汇,词汇中间以下划线分隔。

(2)规则2:命名只能使用英文字母,数字,下划线,并以英文字母开头。

(3)规则3:避免用ORACLE、MySQL的保留字如desc,关键字如index。

2. 表命名

(1)规则1:同一个模块的表尽可能使用相同的前缀,表名称尽可能表达含义。

(2)规则2:长度不超过25个字符。

3. 字段命名

(1)规则1:表达其实际含义的英文单词或简写。

MySQL:布尔意义的字段以“is_”作为前缀,后接动词过去分词。

(2)规则2:各表之间相同意义的字段应同名。

MySQL:各表之间相同意义的字段,以去掉模块前缀的表名_字段名命名。

(3)规则3:外键字段用表名_字段名表示其关联关系。

MySQL:禁止使用外键。

示例:log_prepay.id=log_account.prepay_id

示例(MySQL):字段prepay_group.id被prepay_contact引用;prepay_contact表中与之对应的字段命名为:group_id

4. 索引命名

(1)规则1:表名称_字段名_IND

MySQL:idx_表名称_字段名

示例:employee表first_name上的index:employee_fid_ind

示例(MySQL):prepay表agtphone_id和stream_id上的index:idx_prepay_aid_sid

5. 约束命名

(1)规则1:主键约束:表名称_PK。

(2)规则2:唯一约束:表名称_字段名_UK。

MySQL:除主键外,需存在唯一性约束的,可通过创建以“uk_”为前缀的唯一索引实现,但应用中需要同时有唯一性检查逻辑。

6. 触发器命名

(1)规则1: TRG_表名_操作。

7. 函数过程命名

(1)规则1:采用动词+名词的形式表达其含义。

8. 序列命名

(1)规则1:SEQ_表名

作者:csdn博客 guoyJoe

更多精彩内容:http://www.bianceng.cn/database/basis/