Mysql建表注意事项

  • 表达是与否概念的字段,必须使用 is_xxx 的方式命名,数据类型是 unsigned tinyint (1 表示是,0 表示否)。 长度为1 pojo中映射为Boolean 长度3 pojo中映射为Byte
  • 表名不使用复数;小写;下划线连接;数字不在中间;业务名称_表的作用
  • 禁用保留字,参照官方?
  • 主键索引名为 pk_字段名;唯一索引名为 uk_字段名;普通索引名则为 idx_字段名。
  • 小数类型为 decimal,禁止使用 float 和 double。因为存在精度丢失,可能在比较时出问题。
  • varchar长度不能超过5000,否则要使用text,并单独建表
  • POJO 类的布尔属性不能加 is
  • 必须有id、创建时间、修改时间
CREATE TABLE `user` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `account` varchar(255) DEFAULT NULL COMMENT '登录帐号',
  `pswd` char(32) DEFAULT NULL COMMENT '密码,使用md5加密',
  `yue` bigint(20) unsigned DEFAULT '0' COMMENT '余额',
  `gender` tinyint(3) unsigned DEFAULT '0' COMMENT '0:未知 1:男 2:女',
  `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `is_deleted` tinyint(1) unsigned DEFAULT '0' COMMENT '0:未删除 1:删除',
  `timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `idx_account` (`account`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户表';

猜你喜欢

转载自blog.csdn.net/u012661496/article/details/82251360