一:数据库的设计
-
数据库命名:数据库名的命名一般和项目的名称保持一致,不要随意的起名字。
-
数据库编码: 尽量采用utf8mb4而不使用utf8。MySQL 的“utf8”实际上不是真正的UTF-8,真正的UTF-8是每个字符最多四个字节,而MySQL的“utf8”只支持每个字符最多三个字节。MySQL一直没有修复这个 bug,他们在 2010 年发布了一个叫作“utf8mb4”的字符集,绕过了这个问题。MySQL的“utf8mb4”才是真正的“UTF-8”。所有在使用“utf8”的 MySQL和MariaDB用户都应该改用“utf8mb4”,永远都不要再使用“utf8”。第三方像微信和QQ的昵称一般包含一些表情符号等,这些符号是属于UTF-8的,但是如果数据库中使用utf-8将不能保存这些特殊字符,只能将数据库和表的编码改为utf8mb4才能保存第三方的昵称。utf8转utf8mb4具体操作方法参考文章 https://mathiasbynens.be/notes/mysql-utf8mb4#utf8-to-utf8mb4
二:表的设计
数据库表结构的设计是最基础也是最重要的,因为一旦数据库表设计完毕并投入使用,将来再进行修改就相对比较麻烦,特别数据量大时增加字段修改字段类型都比较麻烦,因此在进行数据库设计的时候一定要尽可能的考虑周到。
数据库表设计要遵守如下原则:
1. 表名
-
表的命名一般遵守 “业务名称 _ 表名“或者是“项目名_ 表名“的格式,