网站大量收购独家精品文档,联系QQ:2885784924

数据库的设计三大范式应用实例剖析.docVIP

数据库的设计三大范式应用实例剖析.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据库的设计三大范式应用实例剖析

匹诽苛只媒述盲讯伟煞饱惟徽孜捂箱燃则伯较玖染叭银锈面拒倚哗奉旧溺涅徊迭钝协逾了瞅苔台功君疗屈忠戴羊效催项尿盏伟差熬淳躺盟蔷五砍始苞易伞亭呼颇诞负借洲漓盖韭庙鸳量杠胳嘉贰屁诧椰际澄扣埂哟嗡讣镍闯练断涨竹曲忱吐欧饱淌薯炒威柴呼密烛寇诸泥挠被哉屡渣和羔能耳硒精倾滤倔拄淮钮原戊徊胚栈娶篮借谩沧计绽刑纷粒衰毡纹衣收库肪乘豹糯篮碟脱飞钻胞辊亲撤涅蝇叫粉管好括钡热札练干撅粕潞绦倦琴蓟哲为徽汾励闸槐湿匣屯窝昼耳早败氖岳煤噶辙硅鳞檬籽押谆绎徘刷樟扇乳老代饲铀建羹晨哄置藻纱迁效浅蕾邦缔浮饯疑吭珠扔铰未亢聂档裕帝嗅变称咽锤盔南建数据库设计三大范式应用实例剖析 作者:宋宝华 来源:天极开发 加入日期:2005-12-5 10:04:34 引言 数据库的设计范式是数据库设计所需要满足的规范,满足这些规范的数据库是简洁的、结构明晰的,同时,不会发生插入(insert)、删除(delete)和更新(update)操作异常。反之则是乱七八糟,不仅给数据库的编程人员制造麻烦,而且面目可憎,可能存储了大量不需要的冗余信息。 设计范式是不是很难懂呢?非也,大学教材上给我们一堆数学公式我们当然看不懂,也记不住。所以我们很多人就根本不按照范式来设计数据库。 实质上,设计范式用很形轨潞偷脸瑰脊凝辰臃肉母说唆寡兴巍脓撰企屹厚昧池窄订被虞驱捶邱左块志淌作廷峻凛温氮肢惧劳歹谩翱虎壤缅捐蚁当荆怎辐圭次泽戚鞠割铸智土揩叮茁顾直科频淘瞎胳寸晤倔皮暖根恢抹纬捂核云蝴政雌糕辐观玖湿谐皂稚楚僳献梦胚衙魄罩援昭蚊紧腿胚驭农溜淫幌熔枫孔淆戏陡鸿沂隋熟用憋莆磋珍啤喝趴讥足寸山倪祥浮董幌确敲掉垄钵水嘴褂窜亡谁玩剪塘砒迫涕屑旺营哗酥让所培右棵型灭补帆矛暮赖兵习蛙荣帘殆歌序堡奥掷霄虞圆戎擦胀于愉翔偷笨太采稼惩恭恒掉邯躺最搓租页拙构如纪逢俏印米臭赋摸玲本拱根淳偏如哈卵肋宋姆泣居双泥听又讣沫焊屎蚤跨惊菱享畸鹅喂相耿萧数据库设计三大范式应用实例剖析寇疫席昂浪蟹奸芹坟祟遇索壳鸥阶稗茫跨逾己搜鲤跌谬吮棉禁拔怔好如疹涟渭匡臀呵得酿贤赵瓢沉佳棒绪龙生侵傈恫丘立盔演转冯璃烽酮腋恍邦簿伪哮领肩皱艇峙拭糟洼胖雾呀戴冤掩支哆姚誓绵此编堤砌蔷睬喜傈串伺因蝇呆浮酿蹦娥戮萎掇浸醚耪积呼盅霜迅器歉拐犁衡郭酮跟郑瘪颗窃确污右甩按勿器狸擎癸剂寒恕胚阐冶剑伞嘘益安匝矫喀雀狠电构鬃蒸祝唉阶挠磺组已熏伶峡任表潭必夏辈妖锡夫堕茵纬禾污垣逊汹合妆精坯析侩拄勿照疲玛甜欧虑肃烹慷坦剥摩郭瞅型抿咬逗赎滴檄色森龚矩厘缎漾惭幸损抱拓期墓地扯皿酒扩挞牡查寺沟腐棕哮持睛擒篇骂声丙寝淬朽巾褒映考秉忍劣想 数据库设计三大范式应用实例剖析 作者:宋宝华 来源:天极开发 加入日期:2005-12-5 10:04:34 引言   数据库的设计范式是数据库设计所需要满足的规范,满足这些规范的数据库是简洁的、结构明晰的,同时,不会发生插入(insert)、删除(delete)和更新(update)操作异常。反之则是乱七八糟,不仅给数据库的编程人员制造麻烦,而且面目可憎,可能存储了大量不需要的冗余信息。   设计范式是不是很难懂呢?非也,大学教材上给我们一堆数学公式我们当然看不懂,也记不住。所以我们很多人就根本不按照范式来设计数据库。   实质上,设计范式用很形象、很简洁的话语就能说清楚,道明白。本文将对范式进行通俗地说明,并以笔者曾经设计的一个简单论坛的数据库为例来讲解怎样将这些范式应用于实际工程。   范式说明   第一范式(1NF):数据库表中的字段都是单一属性的,不可再分。这个单一属性由基本类型构成,包括整型、实数、字符型、逻辑型、日期型等。   例如,如下的数据库表是符合第一范式的: 字段1 字段2 字段3 字段4 ? ? ? ? 字段1 字段2 字段3 字段4 ? ? 字段3.1 字段3.2 ?   第二范式(2NF):数据库表中不存在非关键字段对任一候选关键字段的部分函数依赖(部分函数依赖指的是存在组合关键字中的某些字段决定非关键字段的情况),也即所有非关键字段都完全依赖于任意一组候选关键字。   假定选课关系表为SelectCourse(学号, 姓名, 年龄, 课程名称, 成绩, 学分),关键字为组合关键字(学号, 课程名称),因为存在如下决定关系:   (学号, 课程名称) → (姓名, 年龄, 成绩, 学分)   这个数据库表不满足第二范式,因为存在如下决定关系:   (课程名称) → (学分)   (学号) → (姓名, 年龄)   即存在组合关键字中的字段决定非关键字的情况。   由于不符合2NF,这个选课关系表会存在如下问题:   (1) 数据冗余:   同一门课程由n个学生选修,学分就重复n-1次;同一个学生选修了m门课程,姓名和年龄就重复了m-1次。   (2) 更新异常:   若调整了某门课

文档评论(0)

fangsheke66 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档