12:企业规范约束-MySQL
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了12:企业规范约束-MySQL相关的知识,希望对你有一定的参考价值。
(目录)
12.1 ★库表字段约束规范
字段名:
is_vip unsigned tinyint
长度为1- mysql命名是不区分大小写的,字段名必须是小写字母
- 字段分割用下划线隔开,且一旦定义就不能改字段了
表名:
- mysql仓库名一般和应用名保持一致,关键词不能用作表名,且表名不能出现复数
索引名:
- 主键一般是以
pk_xxx
开头,唯一键以uk_xxx
,idx_xxx
等开头 - 小数类型禁止使用
float
和double
,防止丢失精度,数据很小用char
(定长),不使用varchar
(变长),很长直接用text
表定义:
- 表里必须定义(强制要求)的字段
id
,create_time
,update_time
id
必须为主键,必须为无符号自增bigint
类型,不能定义为int
,除非是分布式id
create_time
,update_time
必须为datatime
类型- 单表行数不超过500W行,一般要分表
12.2 索引规范
索引约束:
- 一般情况下,有唯一特性的字段要设置唯一索引
- 在实际开发当中不允许多于两个表的查询
- 多表查询的时候,关联的字段也要有索引
- 大多数情况下有约束规范就足够了,实习生不用去建索引
12.3 ★SQL开发约束规范
开发约束:
- 不能用
where name = null
来判断是否为空,需要用where name is null
- 并发项目中不要使用并发和级联,一切外键的问题在应用层解决
- 不能使用存储过程
- 子查询中避免
in
操作 - 编码格式统一
utf-8
12.4 其他规范
- ORM(Object Relational Mapping)对象关系映射框架不能使用
select
*作为查询语句,因为效率太低,很多数据没必要查询出来 - 布尔类型不能加
is
,数据库字段必须加is下划线 @Transactional
不要滥用,可能会影响数据库的QBS- DBS 即Database System,是数据库系统
- QBS 即Query By String,是基于数据库的全文检索系统
- 销毁表操作一定要快
总之数据库设计需要考虑周全,涉及的内容非常多……
以上是关于12:企业规范约束-MySQL的主要内容,如果未能解决你的问题,请参考以下文章