一、目标
为了最大限度保证合生通MySQL数据库设计编码规划化,使开发可以写出高质量查询语句。制定本数据库开发设计规范。
二、适用对象及范围
适用的人员包括:使用MySQL数据库的研发人员
适用数据库版本:MySQL5.6及以后
三、命名规范
适用于数据库名、对象名如表、字段、索引、存储过程,函数等的命名约定。
- 使用富有意义的英文词汇,尽量避免使用缩写,多个单词组成的,中间以下划线分割。
- 避免使用MySQL的保留字如LEVEL、关键字如TYPE。
- 各表之间相关列名尽量同名。
- 命名只能使用英文字母,数字和下划线。
3.1 表名
3.1.1规则
命名规则为:xxx_yyy_TableName。xxx表示子系统的名称,由三个字母构成;yyy表示子系统中的子模块的名称(可以没有);TableName为表含义
TableName规则如下:
- 使用英文单词或词组作为表名,不得使用汉语拼音
- 用名词和名词短语作表名
- 不使用复数
正确的命名,例如:sys_user,biz_order
3.2 存储过程
3.2.1规则
命名规则为:proc_xxx_yyy_StoredProcedureName。Proc表示存储过程前缀,xxx表示子系统的名称,由三个字母构成;yyy表示子系统中的子模块的名称(可以没有);StoredProcedureName为存储过程含义
3.2.2 StoredProcedureName规则如下:
- 用动词或动词短语来命名,并带有宾语
- 需要符合用Pascal 命名规则。
- 尽量谨慎地使用缩写
- 尽量不要和关键字重合
- 不要用任何名前缀 (例如 U,B)
- StoredProcedureName内不使用下划线
- 当操作依赖条件时,一般结尾使用 By+条件
3.2.3 存储过程正确的命名
例如:
proc_sys_InsertUser
proc_sys_SearchUserByUserID
proc_sys_DeleteUserByUserID
3.3 视图
规则如下:
视图的命名采用v_xxx_yyy_ViewName_v。v_表示视图前缀,xxx表示子系统的名称,由三个字母构成;yyy表示子系统中的子模块的名称(可以没有)ÿ