sql设计范式简介
范式,就是设计数据表的标准格式。
如果要设计一套关系型数据库表,必须要严格的按照范式执行。
目前有6大范式,但是由于过于严格,456范式企业并没有采用。作为软件测试工程师,我们了解三大范式已经足够了。
三大范式的内容
第一范式
表中的字段不可拆分。
举一个例子,如果表中一个字段取名联系方式,那么可以是电话,微信,邮箱,这就违反了字段不可拆分的范式。可以修改为联系电话,微信,邮箱三个字段或者只选取一个字段。
第一范式的问题:数据的增删改都有可能产生异常。
第二范式
表中的每一行必须唯一,非主键必须完全依赖主键。
解读:
1每一行必须唯一,可以避免出现重复数据,造成数据冗余。
2 非主键必须完全依赖主键:我们创建表的时候,能用一个字段做主键,就不要用两个。
第三范式
每列都和主键直接相关,而不是间接相关。
如果不满足这个范式,需要对表格进行拆分。
表和表之间的数据完整性,通过外键约束,连接查询等去解决。
总结
1 第二范式浪费空间,但是查询效率高
2 第三范式节省空间,但是多表查询的效率比较低。