mysql建表规范

CREATE TABLE dbname_bodyguard_black_box (
  id int(11) NOT NULL AUTO_INCREMENT,
  login_id varchar(64) DEFAULT NULL COMMENT '用户登录账号,手机号',
  black_box text COMMENT '设备指纹令,APP端提供',
  app_name varchar(64) DEFAULT NULL COMMENT '应用标识,区分Android或IOS',
  bize_code varchar(64) DEFAULT NULL COMMENT '业务流',
  create_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  update_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  enabled char(1) DEFAULT '1' COMMENT '是否有效标识,1有效,0无效',
  PRIMARY KEY pk_id (id),
  KEY idx_create_time (create_time),
  KEY idx_login_id (login_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE = utf8mb4_general_ci COMMENT='设备指纹';

要求:

1、 表名或字段名必须使用小写字母或数字,禁止数字开头,禁止两个下划线中间只出现数字,在建表时加上数据库名,方便运维维护。

2、 表名或字段名,多个单词之间用下划线连接。

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

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

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

6、 表必备字段,id,create_time,update_time,enabled。enabled用于逻辑删除。

7、 库名小写,与应用名缩写一致。

8、 统一编码格式为“utf8mb4”,mysql的utf8mb4才是真正的utf8,最多占4个字节。

posted @ 2020-08-03 19:16  jason小蜗牛  阅读(420)  评论(0编辑  收藏  举报