范式化原则
物理表:优先考虑降低数据冗余度、消除二义性,在合理代价的前提下,以第三范式为目标进行表设计。兼顾访问性能、可扩展性等因素,可以在适当范围内进行必要的降范式处理,但必须有配套机制保证数据一致性。
临时表:优先考虑程序访问性能和便捷性,通常不受范式化制约。
表空间使用和分配原则
用户数据与系统数据分离
永久数据与临时数据分离
表数据与索引数据分离
大对象数据独立
字段非空约束
物理表:尽量对所有字段使用非空约束,并设置字段默认值。特殊情况下,允许部分字段不使用非空约束,但必须保证这些字段不作为过滤条件、分组条件,且不参与表达式运算。
临时表:所有字段必须使用非空约束,非逻辑主键字段尽量设置字段默认值。
字段排序
通用原则:表中字段排序依次为:A类技术字段、业务主键字段、B类技术字段、业务非主键字段、C类技术字段。
业务主键字段排序原则:业务主键字段多个时,按访问频度和字段取值区分度由高到低排列。
业务非主键字段排序原则:根据业务含义分组,业务含义相近的字段排在一起;组间和组内再按访问频度由高到低排列,或按业务要素生成次序排列。
A类技术字段:决定整表数据分布的关键字段。状态快照表的快照日期、流水表的数据日期。