【物理设计的工作】
① 选择合适的数据库管理系统:Oracle,SQLServe,MySQL,PgSQL
② 定义数据库、表及字段的命名规范
③ 根据所选的 DBMS 系统选择合适的字段类型
④ 反范式化设计 —— 考虑读效率,在一些表中增加适当的冗余(空间换时间)
【数据库选择】
【MySQL 常用的存储引擎】
注:Archive 主要用于存储日志;Ndb cluster 是 MySQL 集群(内存型集群)所使用的存储引擎。
【表及字段的命名规则】
【建立数据库及表结构 —— 字段类型的选择原则】
(个人经验,选择 Datetime 方便查看,同时 Datetime 也可以直接比较大小)
注:TIMESTAMP 最大 2037 年。
【具体选择字段类型】
身份证号或者电话这种长度固定的数据,可以使用 char 来存储。
【如何选择主键】
【避免使用外键约束】
【避免使用触发器】
【关于预留字段】
【反范式化】
如何查询订单信息?
如何查询订单详情?
【反范式化的设计】
如何查询订单信息?
如何查询订单详情?
【为什么反范式化】
① 减少表的关联数量
② 增加数据的读取效率
③ 反范式化一定要适度