1 / 7
文档名称:

mysql设计规范..doc

格式:doc   大小:63KB   页数:7页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

mysql设计规范..doc

上传人:s0012230 2018/3/20 文件大小:63 KB

下载得到文件列表

mysql设计规范..doc

文档介绍

文档介绍:Mysql设计规范
模型设计流程
设计工具
待定
命名规范
基本原则
数据模型中的表(Table)、字段(Column)、索引(Index)、视图(View)等数据库对象均应遵循以下命名规范:
命名全部采用小写字母
名称的各部分之间用下划线"_"连接
命名应采用能够准确反映对象中文含义的英文单词或英文缩写,尽量不使用汉语拼音(中英文命名对照表详见附录A)
命名长度一般不超过32个字符
名称较长时使用英文缩写,相同缩写含义应相同
禁止使用mysql保留字
默认使用 innodb 存储引擎,使用其他引擎必须注明缘由
使用utf8字符集
表必须有主键,推荐使用UNSIGNED自增列作为主键
避免使用存储过程、触发器、视图、自定义函数等
表名
表名构成:模块名前缀+ 表主体名+ 表后缀(可选)
模块名前缀:表归属模块
表主体名:准确表达表含义,尽量使用英文全称,表名较长时使用英文缩写
表后缀:可选项,表示关系(rlt)、明细(dtl)、周期(mm/dd)等表的类型
字段名
字段名需准确表达字段的含义
可根据情况增加表名前缀
不同表中相同字段名的含义、字段类型、取值含义应相同
不使用数据库关键字
尽量使用英文缩写
尽量不使用单个单词(约定的通用字段除外)
字段全部定义为 NOT NULL
主键名
主键名构成:pk_ + 表名
名称较长时使用表名缩写减小长度,注意表名缩写的唯一性
索引
索引命名
索引名称全部使用小写
非唯一索引按照“idx_字段名称_字段名称[_字段名称]”进行命名
唯一索引按照“uq_字段名称_字段名称[_字段名称]”进行命名
建立索引规范
唯一索引由 3 个以下字段组成并且字段都是整形时,使用唯一索引作为主键。没有唯一索引或唯一索引不符合上述条件时,使用自增 id 作为主键。注意唯一索引不和主键重复
单张表的索引数量控制在字段数的 20%以内,至多 5 个,索引数量过多会导致写入性能的显著下降
合理创建复合索引。首先要避免冗余,ix_a_b_c 相当于同时创建了 ix-_a,ix_a_b,ix_a_b_c 三个索引;其次要避免索引过大,建议最大 4 列复合,列数过多很难提升索引的区分度,反而降低索引的性能
合理使用覆盖索引
对于长度大于 100 的 varchar 字段建立索引时,使用其他方法
使用 EXPLAIN 判断 SQL 语句是否合理使用索引,尽量避免 extra 列出现 FILE SORT,USINGTEMPORARY
索引不只用于 select 查询,update 和 delete 语句也需要根据 where 条件合理设计索引
where 条件中的非等值条件(IN,BETWEEN,<,<=,>,>=)会导致后面的条件无法使用索引
视图
视图名构成:v_ + 模块名前缀+ 视图主体名+ 后缀(可选)
数据类型规范
数值型
存储精确浮点数使用 DECIMAL,替代 FLOAT 和 DOUBLE;
根据字段长度选择合适的字段类型,如数字类型有 tinyint,smallint,mediuint,int,bigint 五种类型,分别占用 1byte,2byte,3byte,4byte,8byte。需要特别注意,int(10)和 i