MySQL 数字类型在表结构设计中数据类型注意事项
MySQL 数据库的字符串类型有 CHAR、VARCHAR、BINARY、BLOB、TEXT、ENUM、SET。不同的类型在业务设计、数据库性能方面的表现完全不同,其中最常使用的是 CHAR、VARCHAR
8.0版本以后 MySQL 的默认字符集设置为 UTF8MB4,否则,某些 emoji 表情字符无法在 UTF8 字符集下存储,比如 emoji 笑脸表情,对应的字符编码为 0xF09F988E
不推荐使用整型类型的属性 Unsigned,若非要使用,参数 sql_mode 务必额外添加上选项 NO_UNSIGNED_SUBTRACTION;
自增整型类型做主键,务必使用类型 BIGINT,而非 INT,后期表结构调整代价巨大;
MySQL 8.0 版本前,自增整型会有回溯问题,做业务开发的你一定要了解这个问题;
当达到自增整型类型的上限值时,再次自增插入,MySQL 数据库会报重复错误;
不要再使用浮点类型 Float、Double,MySQL 后续版本将不再支持上述两种类型;
账户余额字段,设计是用整型类型,而不是 DECIMAL 类型,这样性能更好,存储更紧凑。
排序规则(Collation)是比较和排序字符串的一种规则 绝大部分业务的表结构设计无须设置排序规则为大小写敏感!除非你能明白你的业务真正需要
性别设置这种 设定男和女
是和否 设定TRUE 或者false
不要直接存储账户密码等 要加密处理。
再设计密码时 不能使用MD5来用 因为他们能够暴力破解 推荐使用动态盐和非固定加密算法
内容有不可之处,欢迎评论指出