数据库设计

阅读更多
本文主要是基于跟DBA往来邮件中内容以及实际开发过程中的经历,用文字记录一下设计开发感悟。
1.设计数据库之前一定要对业务了如指掌,任何业务的边边角角都要读到,杜绝出现业务盲区;
2.需求本身的不确定不能影响数据库设计本身,即数据库设计必须最低满足3范式等一些数据库设计本身的一些基本约束;
3.字段类型长度选择定论应该以业务的可拓展为目标,例如数据字典树结构数据(000000,000100,010101)建议存成varchar类型,varchar类型数据无论在数据库还是在代码里都可以做截取操作;
4.数据库表除了物理主键外,最好设置一个业务主键,外键由业务主键充当,当然建议是主表才这么做;
5.对于架构规定必须冗余的字段,要学会判断,中间表就没有必要了;
6.设计表结构时除了要熟悉业务之外,还必须整合业务相关的设计经验,超前设计一些字段,但不能因此影响工作进度;
7.对于主表核心字段注释建议在代码阶段由数据字典或枚举类统一管理,没必要在列或实体属性后面去注释,防止信息不同步。

你可能感兴趣的:(技术,积累)