数据库的设计规范
2.范式
在关系型数据库中,关于数据表设计的基本原则、规则就称为范式。可以理解为,一张数据表的设计结 构需要满足的某种设计标准的 级别 。要想设计一个结构合理的关系型数据库,必须满足一定的范式。
2.1键和相关属性的概念
第一范式
确保数据表中每个字段的值必须有原子性
每个字段的值为不可再次拆分的最小数据单元
原子性是主观的,取决于具体应用和需求,决定是否继续拆分为细粒度。
第二范式
满足数据表里的每一条数据记录都是可唯一表示的,所有非主键字段,都必须完全依赖主键,不能只依赖主键的一部分。
如果存在不完全依赖,那么这个属性和主关键字的这一部分应该分离出来形成一个新的实体,新实体与元实体之间是一对多的关系
第三范式
要求数据表中的所有非主键字段不能依赖于其它非主键字段。
2NF和3NF概括——每个非主键属性依赖于主键,依赖于整个主键,并且除了主键别无他物。
第三范式通常被认为在性能、扩展性和数据完整性方面达到了最好的平衡
没有完美的设计,只有合适的设计。
3.反范式化
有些数据看似冗余,其实对业务来说十分重要,这时候就要遵循业务优先的原则,首先满足业务需求。
数据库性能和规范化数据的矛盾,和现实世界一致。
4.E-R模型
什么是E-R模型?
实体关系模型
什么时候要用E-R模型?
在开发基于数据库的信息系统的设计阶段,通常用ER模型来描述信息需求和信息特征,帮助理清业务逻辑,从而设计出优秀的数据库。特别是对于大型复杂的项目。
ER模型包括哪些要素?
关系的类型?