设计Web数据库省赛获奖.pptx

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
北京电子科技职业学院移动服务器端开发(基于PHP技术)Contents使用原子列值三四选择有意义的键避免多个空属性五设计Web数据库原则23使用原子列值使用原子列值使用原子列值的意思是对每一行的每个属性只存储一个数据。例如,我们想要知道某个学生都选了哪些课程,有几种方法可以实现。一种方法是,在“选课情况表”的“所选课程编号”列中列出所有选择的课程。选课情况表学号所选课程编号2016100101011001、10022017100302331002、10032017100403091002、1003从各个方面来分析,这种方法都不好。例如,我们需要统计“有多少同学选了1002这门课?”,系统需要分析每个属性值,看是否包含一个匹配。使用原子列值另外一种方法是,在“学生表”和“课程表”之间建立一种关联。选课情况表学号所选课程编号201610010101100120161001010110022017100302331002201710030233100320171004030910022017100403091003这样设计,就做到了使用原子列值的目的。本例中,每个同学可以选多门课程,每门课程也可以被多个同学选择。当两个对象间存在多对多的关系时,通常采用这种类型的表格来解决。4选择有意义的键选择有意义的键在设计表的时候,需要确认所选择的键是唯一的。在这个例子中,我们为学生、课程都创建了一个特殊的键学号、课程编号,这些在现实世界中能够保证其唯一性。对于选课情况表,我们可以添加额外的键。选课情况表ID学号所选课程编号001201610010101100100220161001010110020032017100302331002004201710030233100300520171004030910020062017100403091003实际上,如果不添加ID列,“学号”和“所选课程编号”这两个属性的组合也是唯一的。5避免多个空属性避免多个空属性如果希望在数据库中添加一些对课程的说明,我们可以采用两种方法来实现。第一种方法,在“课程表”中添加一列“说明”。课程表课程编号课程名任课教师说明1001PHP程序设计孙娟1002Java程序设计李刚1003C#程序设计张欣这样,每门课就有了一个字段来添加说明。可是,如果我们的课程很多,老师无法对所有课程进行说明或者有一些课程不需要说明,那么,在这个字段,很多数据行就没有值,这就叫做空值。避免多个空属性第二种方法,在数据库中建立一个新表,这个表中只包含带有课程说明的课程。课程说明表课程编号课程说明1001本课程仅向二年级学生开设这样,就可以避免空值较多的问题。北京电子科技职业学院谢 谢 观 看

文档评论(0)

139****8869 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档