mysql建表规约

1、表达是与否概念的字段,必须使用is_xxx 的方式命名。数据类型是:unsigned tinyint。(1表示是,0表示否)。
  任何字段如果是非负数,必须使用unsigned。
  POJO类中的任何布尔类型的变量,都不要加 is 前缀。所以,需要在<resultMap> 设置 is_xxx 到Xxx 的映射关系。数据库表示是与否的值,使用 tinyint 类型,坚持 is_xxx 的 命名方式是为了明确其取值含义与取值范围。
  正例:表达逻辑删除的字段名 is_deleted,1 表示删除,0 表示未删除。 

2、表名、字段名必须使用小写字母或数字,禁止出现数字开头,禁止两个下划线中间只 出现数字。数据库字段名的修改代价很大,因为无法进行预发布,所以字段名称需要慎重考虑。 
  MySQL 在 Windows 下不区分大小写,但在 Linux 下默认是区分大小写。因此,数据库名、 表名、字段名,都不允许出现任何大写字母。

3、表名不能使用复数名词。
  只是表示表中的实体内容,不应该表述实体数量。

4、禁用保留字。,如 desc、range、match、delayed 等。

5、主键索引名为pk_ 字段名,唯一索引 uk_ 字段名,普通索引则为 idx_字段名。

6、小数类型为 decimal,禁止使用 float 和 double 。

7、如果存储的字符串长度几乎相等,使用char 定长字符串类型。

8、varchar 是可变长字符串,不预先分配空间,长度不要超过 5000。如果存储的长队超过此值,定义字段类型为text,独立出一张表用主键来对应。避免影响其他字段的索引效率。

10、表的命名最好是加上:“业务名称_表的作用”。

11、库名与应用名尽量一致。

12、如果系应该字段含义与字段表示的状态追加时,需要及时更新字段注释。

13、























posted @ 2019-04-03 20:14  payn  阅读(434)  评论(0)    收藏  举报