任务三-定义旅游信息数据库表及表间联系 教学设计
1教学目标
1、通过实例分析,理解数据库设计过程中经历的由现实世界到信息世界再到数据世界的逐步抽象过程2、学会数据收集、数据分类3、初步掌握建立关系数据模型的基本方法,学会将实体—关系图(E-R图)描述成关系数据模型4、通过实例操作,掌握如何创建数据表间的联系
2学情分析
1、学生通过本教材第一章的学习,已经知道数据管理、数据管理技术等基本概念,初步了解数据库、数据库管理系统、数据库应用系统及其相互关系;2、学生能够明确实体、属性、关系的含义;知道关系数据库中的库、表、记录、字段等概念,能在关系数据库中分析出表、字段、记录;3、学生有联系实际生活的意识,并关注数据管理技术在社会各方面的应用;4、学生能充分利用现有的数据库资源(教材配套光盘),完成相关学习任务;5、学生通过本节任务一《旅行社旅游业务需求分析》的学习,能了解分析现实生活中旅行社在旅游业务方面的具体业务工作是设计旅游信息数据库的必备前期工作;同时也产生了如“希望计算机完成的工作”等对数据库的应用需求思想。6、学生通过本节任务二《旅游信息数据库的建模》的学习,能理解数据模型的建立在数据库构建中的重要作用,能尝试使用实体-关系图(E-R图)描述现实世界中的信息及其相互关系。
3重点难点
教学重点:以旅行社业务需求分析为基础,学习将实体及其属性转换成关系数据库中的表;理解现实世界中实体之间的关系体现到数据库中即为表与表之间的关系,并尝试定义旅游信息数据库中各表间的联系。教学难点:学习掌握在数据库建模过程中如何将现实世界的抽象信息具体化;学会分析(描述)数据库中各实体所对应的属性结构;理解和掌握在数据表之间建立具有相同属性的字段来构建表与表之间的关联关系。
4教学过程
活动1【导入】E-R图复习导课
1、课程导入(复习导课)在上一节课(任务二)的学习过程中,我们知道:数据模型是对现实世界的模拟和抽象,而实体-关系图(entity-relationdiagrams,ERD)(又称E-R图)是一种比较常用的描述数据库概念模型的方法。让我们先来看一看上节课几组同学用E-R图对“游客”这个实体及其属性的描述:
我们看到,同学们对“游客”这个实体进行描述时,各有不同。现实生活中每个旅行社在制订游客报名表时也确实存在差异:有的报名表中含有旅行地点、有的含有旅行团号、有的需要身份证号、有的制有民族特征、有的注明外出线路或同行人员或客房要求。确定实体和属性是构建E-R图的最重要的工作,在设计实践中,有时实体与属性很难截然划分清楚,如同一事物,在一种应用环境中作为“属性”,在另一种应用环境中可能必须作为“实体”。一般说来,在给定的应用环境中:属性不能再具有需要描述的性质。即属性必须是不可分的数据项;属性也不能与其他实体具有联系。联系只发生在实体之间。【小组讨论】确定实体和属性1、请根据“实体和属性”定义(第一章第三节“学习指引”)对上面三个小组的“游客”E-R图做出修改建议。2、对自己所在小组的“实体和属性”关系图做出修改。提示:①王艳艳小组里的“联系方式”需要继续描述(如:电话、邮件等),不适合做基本数据项。(不符合第一范式,规范化理论将在下一章提及,暂不作特别要求。)②张峰小组里的“旅游价格”不属于“游客”属性③钱小红小组里的“合同号”、“签约日期”、“线路名称”、“导游工号”、“旅游价格”不属于“游客”属性
活动2【讲授】引入新课
2、引入新课上节课,我们用实体、实体的属性、实体间的关系描述了现实世界。并做出了相关E-R图,在此基础上,我们可以建立计算机数据世界中的数据模型-关系数据模型。
活动3【活动】将E-R图中的实体及属性转换为表
【小组活动一】将E-R图中的实体及属性转换为表以快乐旅行社业务需求分析为基础,将实体及属性转换成关系数据库中的表。提示:数据世界中的数据模型是基于具体计算机系统和数据库管理系统的数据模型,它直接面向数据库的逻辑结构。就关系数据库模型而言,就是要定义表及表间联系等。
导游
工号
姓名
性别
旅游线路
线路名称
旅游团
线路编号
发团日期
导游工号
游客
合同
合同号
签约日期
旅游团编号
提示:关系数据库是由相互关联的二维表(简称“表”)组成的。表是数据世界中实体的体现,因此表与实体对应,字段与属性对应。表名对应实体名,字段名对应实体的属性名。
活动4【活动】小组讨论
【小组讨论】:确定需求请同学们观察下面这张表:
游客
姓名
性别
地址
电话
身高
体重
身份证号
婚姻状况
工作单位
这张游客表是某组同学根据实体-关系图(E-R图)转换过来的,表中的字段即为“游客”(表名,即实体名)的属性。根据前面的分析,可以看出,这些字段确实是对“游客”的描述,也是“不可分的基本数据项”(即“数据含义单一”),符合数据库对字段的定义。然而,在旅行社业务工作中,对游客进行登记(描述)时,有时并不需要太多的、对业务影响不大或几乎没有影响的实体的描述,我们在的设计数据库时,应该紧紧围绕“准确、实用”的原则,开展数据表的设计制作。再看看这张“旅游团”表:
旅游团
团号
线路编号
发团日期
导游工号
出发地
目的地
人数
男女比例
【问题思考】:数据表中过多或过少的属性项设计对我们的工作开展有何影响?
活动5【练习】修改“实体-属性”项
请根据旅行社业务需求,对以上两张数据表提出修改意见。
活动6【测试】小组互评
【成果展示】:各小组将本组的数据表上传共享区展示、讨论、评价。
“E-R图转换”评价量表
导游表
旅游线路表
旅游团表
游客表
合同表
第一组
★
★★★
★★
第二组
第三组
第四组
第五组
活动7【活动】定义主关键字
【小组活动二】定义主关键字在第一章第三节任务二“解读实例中的表”这个环节中,我们通过对图书馆数据库中查看某位同学借书与还书情况的分析知道,数据库表中能唯一确定某个记录的字段称为“主关键字”。通常,在实体的属性中往往可以找到可以唯一标识实体的属性(一个或几个),我们将其定义为主关键字后,在今后的数据查询时能起到快速定位记录或便于表与表之间关联。关系数据库中的每一张表都应该有一个主关键字。任务:为已经转换好的导游表、线路表、旅游团表、游客表、合同表各自定义一个主关键字,并为被定义成主关键字的属性(字段)加下划线。【讨论】⑴ 在游客表中,游客的姓名有可能相同,从哪些字段可以判断他们不是同一人?⑵ 用证件编号来标识游客是否方便?⑶ 是否需要添加字段来标识特定的游客?
提示:当原有的表的字段中,找不到可唯一标识该表的记录的字段时,如游客表中“姓名”不能唯一地标识游客,在数据库设计中,往往采取另外添加新的主关键字段来唯一地标识该表的记录。线路编号、游客编号、团队编号等都是这种情况下添加的字段。
主关键字也可以是字段的组合。
活动8【测试】小组互评
【成果展示】:各小组将本组已定义好主关键字的数据表上传共享区展示、讨论、评价。
“主关键字定义”评价量表
合理
较合理
不合理
第一组
第二组
第三组
第四组
第五组
活动9【活动】定义表间联系
【小组活动三】定义表间联系在关系数据库中数据库管理系统将凭借“关系”把一个个看似独立的表整合成有机的数据共同体。
结合已经转换好的数据表,请同学们完成如下分析并在E-R图中用1:1、1:n、和m:n标出这种联系。⑴ 导游表与旅游团表之间为一对多的关系,通过导游表中的( )与旅游团表中的“导游工号”相关联。(提示:工号)⑵ 线路表与旅游团表之间为一对多的关系,通过线路表中的“线路编号”与旅游团表中的( )相关联。(提示:线路编号)⑶ 游客表与合同表之间为一对多的关系,通过游客表中的“游客编号”与合同表中的( )相关联。(提示:游客编号)⑷ 游客表与旅游团表之间为多对多的关系,通过合同表间接的相关联。合同表充当媒介,它与游客表、旅游团表之间都是一对多的关系。合同表与旅游团表的一对多关系通过合同表中的“旅游团编号”与旅游团表中的( )相关联。(提示:团号)【概念学习】关联关键字段关系数据库由多张表组成。各表之间的联系反映了现实世界中实体之间的关系。表与表之间的关系类型也有三种:一对一、一对多和多对多。一对多的关系最普遍。多对多的关系需要使用第三张表来间接关联,第三张表与前两张表之间都是一对多的关系。
相关联的数据表之间通过具有相同属性的字段建立关联关系。该字段称为关联关键字段。
请各组同学完成上述“表间联系”分析后,填写下表:
数据表关联关系
一对一
一对多
多对多
关联字段
导游表→旅游团表
线路表→旅游团表
游客表→合同表
旅游团表→合同表
游客表→旅游团表
活动10【测试】自我评价量表
自我评价量表
定义数据库表及表间联系
熟练掌握
基本掌握
未能掌握
实体-属性(E-R图转换为表)
定义主关键字
定义表间联系
活动11【讲授】课堂小结
3、【课堂小结】通过以上的实际操作,我们认识到:数据模型的建立一般是先局部再全局而E-R图将帮助设计人员全面地理解整个信息世界(对于大型数据库应用场合,可以按应用划分子系统的E-R图)。
活动12【作业】课后练习
4、【课后练习】:试分析“导游表”与“线路表”之间的关系,并找出这两表间的关联关键字段。(提示:可设置中间媒介表)
活动13【作业】进阶训练
5、【进阶训练】:能否用图表的形式,标识出表与表之间的关联?你还能标识出几张这种图表间的联系?图例:
课件14张PPT。任务三-定义旅游信息数据库表及表间联系设计旅游信息数据库E-R图复习讨论请同学们观察分析这几组“游客”实体及其属性的E-R图:王艳艳小组的E-R图张峰小组的E-R图钱小红小组的E-R图小组讨论【确定实体和属性】
1、请根据“实体和属性”定义(第一章第三节“学习指引”)对上面三个小组的“游客”E-R图做出修改建议。
2、对自己所在小组的“实体和属性”关系图做出修改。小组活动一【将E-R图中的实体及属性转换为表】
以快乐旅行社业务需求分析为基础,将实体及属性转换成关系数据库中的表。
●游客 ●导游 ●合同
●旅游团 ●旅游线路小组讨论【确定需求】
请观察与修改下表:游客旅游团小组评价小组活动二【定义主关键字】
任务:为已经转换好的导游表、线路表、旅游团表、游客表、合同表各自定义一个主关键字,并为被定义成主关键字的属性(字段)加下划线。【讨论】
⑴ 在游客表中,游客的姓名有可能相同,从哪些字段可以判断他们不是同一人?
⑵ 用证件编号来标识游客是否方便?
⑶ 是否需要添加字段来标识特定的游客?小组评价小组活动三【定义表间联系】
根据这些E-R图,结合已经转换好的数据表,请同学们完成如下分析并在E-R图中用1:1、1:n、和m:n标出这种联系。小组活动三⑴ 导游表与旅游团表之间为一对多的关系,通过导游表中的( )与旅游团表中的“导游工号”相关联。
⑵ 线路表与旅游团表之间为一对多的关系,通过线路表中的“线路编号”与旅游团表中的( )相关联。
⑶ 游客表与合同表之间为一对多的关系,通过游客表中的“游客编号”与合同表中的( )相关联。
⑷ 游客表与旅游团表之间为多对多的关系,通过合同表间接的相关联。合同表充当媒介,它与游客表、旅游团表之间都是一对多的关系。合同表与旅游团表的一对多关系通过合同表中的“旅游团编号”与旅游团表中的( )相关联。小组活动三自我评价表【课后练习】试分析“导游表”与“线路表”之间的关系,并找出这两表间的关联关键字段。
(提示:可设置中间媒介表)【进阶训练】能否用图表的形式,标识出表与表之间的关联?你还能标识出几张这种图表间的联系?图例: