大数据库设计三范式

大数据库设计三范式

ID:47240467

大小:56.00 KB

页数:8页

时间:2019-08-06

大数据库设计三范式_第1页
大数据库设计三范式_第2页
大数据库设计三范式_第3页
大数据库设计三范式_第4页
大数据库设计三范式_第5页
资源描述:

《大数据库设计三范式》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、实用文档数据库设计三范式作为一个数据库的学习者,搞懂关系数据库的三大范式是很有用的。然而有关数据库范式的介绍都是采用学术性的定义,语法羞涩,让人难懂,故写下自己对数据库范式的理解,给初学者提供帮助。关系数据库中的关系必须满足一定的要求。满足不同程度要求的为不同范式。数据库的设计范式是数据库设计所需要满足的规范。只有理解数据库的设计范式,才能设计出高效率、优雅的数据库,否则可能会设计出错误的数据库。目前,主要有六种范式:第一范式、第二范式、第三范式、BC范式、第四范式和第五范式。满足最低要求的叫第一范式,简称1NF。在第一范式基础上进一步满足一些要求的为第二范式,简称2NF。其余依此类推

2、。范式可以避免数据冗余,减少数据库的空间,减轻维护数据完整性的麻烦,但是操作困难,因为需要联系多个表才能得到所需要数据,而且范式越高性能就会越差。要权衡是否使用更高范式是比较麻烦的,一般在项目中,用得最多的也就是第三范式,使用到第三范式也就足够了,性能好而且方便管理数据。本文不介绍规范化程度高于3NF的范式,对于很多大型复杂的系统,其数据库设计都没有遵循所谓的范式,这也是为什么会出现所谓的逆规范化,范式也需要考虑使用场景,不可一切东西都要范式化。在没有更多实践经验的情况下,遵循范式是非常好的选择。在实例中理解三大范式1NF:字段不可分文案大全实用文档强调的是列的原子性,即列不能够再分成

3、其他几列。例1,学生信息表·学生编号姓名性别联系方式·20080901张三男email:zs@126.com,phone:88886666·20080902李四女email:ls@126.com,phone:66668888·以上的表就不符合,第一范式:联系方式字段可以再分,所以变更为正确的是:·学生编号姓名性别电子邮件电话·20080901张三男zs@126.com88886666·20080902李四女ls@126.com66668888例2,学生班级信息·学生编号姓名班级·20080901小明高三1班·20080902小叶高三2班·以上的表就不符合,第一范式:班级字段可以再分,所

4、以变更为正确的是:·学生编号姓名年级班级·20080901小明高三1班·20080902小叶高三2班例3,员工信息表·员工编号姓名工作年限·20080901小明2009~2011·20080902小叶2006~2012·以上的表就不符合,第一范式:工作年限可以再分,所以变更为正确的是:·员工编号姓名工作年份离职年份·20080901小明20092011·20080902小叶20062012例4,学生成绩表·学生编号姓名课程成绩·20080901小明80,70,90·20080902小叶60,70,85·以上的表就不符合,第一范式:课程成绩可以再分,所以变更为正确的是:·学生编号姓名语文

5、数学外语·20080901小明807090·20080902小叶607085例5,联系人信息表·姓名性别电话文案大全实用文档·小明男0101-3464554,13699170707·小叶女0101-3464674,13623450707·以上的表就不符合,第一范式:电话可以再分,所以变更为正确的是:·姓名性别座机手机·小明男0101-346455413699170707·小叶女0101-346467413623450707例6,公司信息表·公司编号名称地址·20080901谷歌美国加利福尼亚州圣克拉拉县山景市·20080902百度中国北京市海淀区上地十街10号百度大厦·以上的表就不符合

6、,第一范式:地址可以再分,所以变更为正确的是:·公司编号名称国籍地址·20080901谷歌美国加利福尼亚州圣克拉拉县山景市·20080902百度中国北京市海淀区上地十街10号百度大厦对于例6地址的拆分可根据需求进行,不一定非要拆分。如果需知道哪个国家并按其分类,那么显然第一个表格是不容易满足需求的,也不符合第一范式。因此是否符合第一范式的要求在一定程度上取决于后期对数据的查询和使用上,当然,第一范式是前人总结的通用方法,遵循它会得到意想不到的好处。2NF:有主键,非主键字段依赖主键首先是满足1NF,另外包含两部分内容,一是表必须有一个主键;二是没有包含在主键中的列必须完全依赖于主键。主

7、键很重要,要记住在设计表的时候无论如何也要添加主键,没有主键的表会给你带来噩梦般的体验,会给系统开发、功能维护、数据维护带来不必要的麻烦。举个例子,上面例5,联系人信息表就没有添加主键,如下数据你想删除小明的信息该如何操作,根据姓名吗?不行,因为有重名的情况,只能通过姓名+电话两个字段组合为一个唯一的条件进行删除。姓名性别电话·小明男0101-3464554,13699170707·小叶女0101-3464674,13623450707·小朱女

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。