DB基本理论知识梳理
树图思维导图提供 DB基本理论 在线思维导图免费制作,点击“编辑”按钮,可对 DB基本理论 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:f46dab9e4bf441f1ad8e4eb4c9e98047
DB基本理论思维导图模板大纲
建立外键的原则
一个是让数据库自己通过外键来保证数据的完整性和一致性
一个就是能够增加ER图的可读性
建外键的原则
1、 为关联字段创建外键。
2、 所有的键都必须唯一。
3、避免使用复合键。
4、外键总是关联唯一的键字段。
结论
1,在大型系统中(性能要求不高,安全要求高),使用外键; 在大型系统中(性能要求高,安全自己控制),不用外键;小系统随便,最好用外键。
2,用外键要适当,不能过分追求
3,不用外键而用程序控制数据一致性和完整性时,应该写一层来保证,然后个个应用 通过这个中间层来访问数据库。
互联网应用是否建立外键的建议
不用外键
1,可以用触发器或应用程序保证数据的完整性
2,过分强调或者说使用主键/外键会平添开发难度,导致表过多等问题
3,不用外键时数据管理简单,操作方便,性能高(导入导出等操作,在insert, update, delete 数据的时候更快)
原子性
持久性
一致性
隔离性
隔离级别
SQL语句的类型
1NF
1NF是对属性的原子性约束,要求属性具有原子性,不可再分解 ,即数据库表的每一列都是不可分割的基本数据项(只要是关系数据库都满足1NF)
满足1NF的关系被称为规范化的关系,1NF也是关系模式应具备的最起码的条件。 比如有这样一张表user的两列: name phone_number phone_number这一列只存储一个电话号码,如果一条数据同时存储了住宅电话和手机号码,比如:“010-65576558,13765556765”,那么这个属性是可以再分的,违背了1NF。
2NF
2NF是对记录的唯一性约束,要求记录有唯一标识。即实体的唯一性。通常我们设计一个主键来实现。
首先要满足是1NF,另外还需要包含两部分内容:一是表必须有一个主键;二是没有包含在主键中的列必须完全依赖于主键,而不能只依赖于主键的一部分。
3NF
3NF是对字段冗余性的约束,它要求字段没有冗余
BC范式
4NF
5NF
总结、观点
数据库表结构设计时,遵从一定的范式(NF,Normal Form)可以减少数据冗余和操作异常。
没有冗余的数据库未必是最好的数据库,有时为了提高运行效率,就必须降低范式标准,适当保留冗余数据。具体做法是: 在概念数据模型设计时遵守第三范式,降低范式标准的工作放到物理数据模型设计时考虑。降低范式就是增加字段,允许冗余。
在保证数据完整性基础上,通常达到3NF,有时达到2NF已经足够了,追求过高的NF级别会导致混乱的库表,大量的多表连接查询,性能低下。
范式的优劣势
优势
范式可以避免数据冗余,减少数据库的空间,减轻维护数据完整性的麻烦
劣势
按照范式的规范设计出来的表,等级越高的范式设计出来的表越多。表的数量 越多,当我们去查询一些数据,必然要去多表中去查询数据,这样查询的时间 要比在一张表中查询中所用的时间要高很多。也就是说我们所用的范式越高, 对数据操作的性能越低。
反范式
范式所要求的正好相反,在反范式的设计模式,我们可以允许适当的数据的冗余,用这个冗余去取操作数据时间的缩短。也就是用空间来换取时间,把数据冗余在多个表中,当查询时可以减少或者是避免表之间的关联
随着数据量的不断增加,设计的阶段衍化
第三范式的数据库设计->反范式的数据库设计->范式和反范式的数据库设计 (SQL与NoSQL结合,且NoSQL更多)
树图思维导图提供 人文地理学的研究主题与基本理论 在线思维导图免费制作,点击“编辑”按钮,可对 人文地理学的研究主题与基本理论 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:34bc45adbcee0fd278868f763281316e
树图思维导图提供 幼儿素质教育基本理论 在线思维导图免费制作,点击“编辑”按钮,可对 幼儿素质教育基本理论 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:b134224b800f13b31ddd4861dc652a84