1、1第2章 关系数据库江西先锋软件职业技术学院江西先锋软件职业技术学院主讲:王浩主讲:王浩本章主要内容本章主要内容 1、关系模型的主要术语、关系模型的主要术语 2、关系的运算、关系的运算 3、模型转换、模型转换 4、关系的完整性、关系的完整性 5、关系数据库设计实例、关系数据库设计实例 关系数据结构关系数据结构 二维表二维表 选择、投影、连接等关系运算选择、投影、连接等关系运算 关系操作集合关系操作集合 关系模型关系模型 插入、删除、修改等数据操作插入、删除、修改等数据操作 实体完整性实体完整性 关系的完整性关系的完整性 域完整性域完整性 参照完整性参照完整性2.1 关系模型的主要术语关系模型的
2、主要术语 2.1 关系模型的主要术语关系模型的主要术语 关系模型采用相互关联而又相互独立的多个二维关系模型采用相互关联而又相互独立的多个二维表格来反映数据库的关系。表格来反映数据库的关系。其数据的逻辑结构就是相互关联又相互独立的多其数据的逻辑结构就是相互关联又相互独立的多个二维表。个二维表。表表 行行 列列 码码 项项关系关系Table 记录记录Record 字段字段Field 关键字关键字Key 数据数据Data 2.1 关系模型的主要术语关系模型的主要术语 表(关系表(关系TableTable):):一个关系对应于平常讲的一张二维表一个关系对应于平常讲的一张二维表,是具有相同性质的记录的集
3、合。,是具有相同性质的记录的集合。行(记录行(记录RecordRecord):):表中的一行称为一条记录。表中的一行称为一条记录。列(字段列(字段FieldField):):表中的一列称为字段,给每一列起一表中的一列称为字段,给每一列起一个名称即字段名。个名称即字段名。码(关键字码(关键字KeyKey):):唯一地标识一条记录的一个或若干个唯一地标识一条记录的一个或若干个字段集合。字段集合。主码(主码(Primary KeyPrimary Key):):被挑选出来作为表中记录的唯被挑选出来作为表中记录的唯一标识的码,一个表中只有一个主码。一标识的码,一个表中只有一个主码。外码(外码(Forei
4、gn Key)Foreign Key):如果两个关联关系中具有相容或如果两个关联关系中具有相容或相同的码,当这个码在一个关系中是主码,则被称为另一个相同的码,当这个码在一个关系中是主码,则被称为另一个关系的外码。外码表示两个关系之间的联系。关系的外码。外码表示两个关系之间的联系。项项DataData(数据数据):行中的列值。行中的列值。2.1 关系模型的主要术语关系模型的主要术语学 号姓 名性 别班 级家 庭 住 址联 系 电 话99010301 刘 中 雨女注 会北 京 东 城6395665599010302 林 天 力男注 会北 京 崇 文6711737899010303 王 平男注 会北
5、 京 丰 台6372891299010304 章 闻 天男注 会北 京 朝 阳6739135699020201 闻 书 敏女金 融北 京 怀 柔8935632199020202 于 小 丽女金 融北 京 宣 武62367835字段字段记录记录例:学生表例:学生表数据数据主码主码2.1 关系模型的基本概念关系模型的基本概念 例:学生选课系统中,其概念模型中有学生实体、课程实体以及选课联系。学号(studentID)姓(studentName)性别(Sex)20100101张小丽女20100102王刚男20100103李平女20100104郭鹏男20100105刘翔男20100106吴飞男2010
6、0107张国强男20100108李国庆男2.1.2 关系基本概念课程号(courseID)课程名(coursename)课程类别(typename)342101计算机基础专业课342102数据库应用专业课342103C语言程序设计专业课342104大学英语基础课342105高等数学基础课学号(studentID)课程号(courseID)成绩(Grade)2010010234210386201001013421017920100105342102812010010734210490201001083421019220100102342104752010010734210580201001063
7、4210170关系选课 外码是指一个表中的某个列(非主码)是外码是指一个表中的某个列(非主码)是另一个表的主码,那么该列被称为外码。另一个表的主码,那么该列被称为外码。关系学生 2.1 关系模型的主要术语关系模型的主要术语 需要关注的几点需要关注的几点:1)1)关系中每一数据项不可再分,是最基本的关系中每一数据项不可再分,是最基本的数据单位。数据单位。2)2)每一列的数据项是同属性的,列数根据需每一列的数据项是同属性的,列数根据需要而设,且各列的顺序是任意的。要而设,且各列的顺序是任意的。3)3)每一行由一个个体事物的诸多属性构成,每一行由一个个体事物的诸多属性构成,且各行的顺序可以是任意的。
8、且各行的顺序可以是任意的。4)4)一个关系是一张二维表,不允许有相同的一个关系是一张二维表,不允许有相同的列名,也不允许有相同的行。列名,也不允许有相同的行。5)5)支持数据独立性,因而可维护性、可扩展支持数据独立性,因而可维护性、可扩展性、可重用性都比较好。性、可重用性都比较好。2.1 关系模型的主要术语关系模型的主要术语 对某个班级的学生、任课教师、课程和成绩的管理,对某个班级的学生、任课教师、课程和成绩的管理,就需要用到以下就需要用到以下3张表格:学生表、课程表、成绩表。张表格:学生表、课程表、成绩表。这些表虽然各自是独立的,但又相互关联。这些表虽然各自是独立的,但又相互关联。例:查询例
9、:查询孙雯孙雯同学的同学的影视文学影视文学成绩,并找出其任课老师。成绩,并找出其任课老师。1)到到学生表学生表姓名字段找到姓名字段找到“孙雯孙雯”,记下她的学号,记下她的学号2007230317;2)到)到课程表课程表课程名字段找到课程名字段找到“影视文学影视文学”,记下它的,记下它的课程号课程号B0100260;3)到)到成绩表成绩表,在学号列找到,在学号列找到2007230317集合,然后集合,然后在该集合的课程列找到在该集合的课程列找到B0100260,成绩列就是李华伟同学的,成绩列就是李华伟同学的英语成绩(英语成绩(72分分)。)。4)到)到课程表课程表在课程编号字段找到在课程编号字段
10、找到B0100260,对应任,对应任课教师列就是大学英语的任课教师(课教师列就是大学英语的任课教师(刘建臣刘建臣)。)。2.2 关系的运算 关系的运算包括选择、投影、差、并、交、乘、关系的运算包括选择、投影、差、并、交、乘、除、连接等。除、连接等。在关系运算中,变量是关系,运算结果仍然是在关系运算中,变量是关系,运算结果仍然是关系。关系。常用的关系运算有:常用的关系运算有:1、选择、选择(select):由满足条件的记录组成。由满足条件的记录组成。2、投影、投影(project):由某些字段的所有值组成。由某些字段的所有值组成。3、连接、连接(join):由多个关系通过连接条件组成。由多个关系
11、通过连接条件组成。学 号姓 名性 别班 级家 庭 住 址联 系 电 话99010301 刘 中 雨女注 会北 京 东 城6395665599010302 林 天 力男注 会北 京 崇 文6711737899010303 王 平男注 会北 京 丰 台6372891299010304 章 闻 天男注 会北 京 朝 阳6739135699020201 闻 书 敏女金 融北 京 怀 柔8935632199020202 于 小 丽女金 融北 京 宣 武62367835学号姓名性别班级家庭住址联系电话99010301刘中雨女注会北京东城6395665599020201闻书敏女金融北京怀柔893563219
12、9020202于小丽女金融北京宣武623678352.2 2.2 关系的运算关系的运算 1、选择运算、选择运算 选择是在关系选择是在关系R中选择满足给定条件的诸记录;中选择满足给定条件的诸记录;选择运算是从行的角度进行的运算。选择运算是从行的角度进行的运算。仅选出仅选出【性别性别】为为【女女】的同学信息的同学信息学号姓名性别 班级 家庭住址 联系电话99010301 刘中雨女注会 北京东城 6395665599010302 林天力男注会 北京崇文 6711737899010303 王 平男注会 北京丰台 6372891299010304 章闻天男注会 北京朝阳 6739135699020201
13、 闻书敏女金融 北京怀柔 8935632199020202 于小丽女金融 北京宣武 62367835班级姓名性别注会刘中雨女注会林天力男注会王 平男注会章闻天男金融闻书敏女金融于小丽女2.2 关系的运算关系的运算2、投影运算、投影运算 投影是从关系投影是从关系R中选择出若干字段组成新的关系。中选择出若干字段组成新的关系。投影运算是从列的角度进行的运算。投影运算是从列的角度进行的运算。仅选出学生的仅选出学生的【班级班级】【姓名姓名】【】【性别性别】信息信息(3)连接 连接运算是二元关系运算,是从两个关系元组的所有组合中选取满足一定条件的元组,由这些元组形成连接运算的结果关系。其中条件表达式涉及到
14、两个关系中属性的比较,该表达式的取值为逻辑的真或假。连接运算中最为常用的是等值连接和自然连接。等值连接是指对关系R和S中按相同属性的等值进行的连接运算,而自然连接是在等值连接中去掉重复列的连接运算。2.1 关系模型的概述学号数学语文990103038072990202018860990103029188990103047265990202026870990103017580学号姓名数学语文 99010301刘中雨7580 99010302林天力9168 99010303王 平8072 99010304章闻天7265 99020201闻书敏8860 99020202于小丽6870学号姓名性别 班
15、级 家庭住址 联系电话99010301 刘中雨女注会 北京东城 6395665599010302 林天力男注会 北京崇文 6711737899010303 王 平男注会 北京丰台 6372891299010304 章闻天男注会 北京朝阳 6739135699020201 闻书敏女金融 北京怀柔 8935632199020202 于小丽女金融 北京宣武 623678352.2 关系的运算关系的运算3、连接运算、连接运算 连接运算是二元关系运算,是从两个关系记录的所有组合中选取满足连接运算是二元关系运算,是从两个关系记录的所有组合中选取满足一定条件的记录,由这些记录形成连接运算的结果关系。一定条件
16、的记录,由这些记录形成连接运算的结果关系。连接连接【学生表学生表】和和【成绩表成绩表】,从中选,从中选出学生的出学生的【数学数学】【语文语文】成绩信息成绩信息2.3 模型转换1、模型转换的方法、模型转换的方法 概念模型向关系模型转换实际就是将概念模型向关系模型转换实际就是将E-RE-R图转图转换为关系模型,要将实体、实体的属性和实体之换为关系模型,要将实体、实体的属性和实体之间的联系转化为关系模式间的联系转化为关系模式 。2.3 模型转换1)模型转换遵循的原则)模型转换遵循的原则 (1 1)一个实体型转换为一个关系模式。)一个实体型转换为一个关系模式。实体的属性就实体的属性就是关系的属性,实体
17、的码就是关系的码。是关系的属性,实体的码就是关系的码。(2 2)一个)一个m:nm:n联系转换为一个关系模式。联系转换为一个关系模式。各实体各实体的码及联系本身的属性均转为关系的属性,关系的码为各的码及联系本身的属性均转为关系的属性,关系的码为各实体码的组合。实体码的组合。(3 3)一个)一个1:n1:n联系可以转换为一个独立的关系模式,联系可以转换为一个独立的关系模式,也可以与也可以与n n端对应的关系模式合并。端对应的关系模式合并。各实体的码及联系本各实体的码及联系本身的属性均转为关系的属性,关系的码为身的属性均转为关系的属性,关系的码为n n端实体的码。端实体的码。(4 4)一个)一个1
18、:11:1联系可以转换为一个独立的关系模式,联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。也可以与任意一端对应的关系模式合并。(5 5)具有相同吗的关系模式可合并。)具有相同吗的关系模式可合并。【例例】实体部门(编号,名称)与实体经理(工号,姓名)之间实体部门(编号,名称)与实体经理(工号,姓名)之间的任职联系是的任职联系是1:11:1联系。联系。E-RE-R模型如图所示。将其转换为关系模型。模型如图所示。将其转换为关系模型。11部门经理任职名称工号编号任职日期姓名11部门(编号,名称)经理(工号,姓名,编号,任职日期)2.3 模型转换【例例】将图书借阅系统的将图书借阅
19、系统的E-RE-R模型转换为关系模型。模型转换为关系模型。读者编号姓名读者类型已借数量图书出版日期出版社编号书名定价借期还期借阅mn读者(读者(编号编号,姓名,读者类型,已借数量),姓名,读者类型,已借数量)借阅(借阅(读者编号读者编号,图书编号图书编号,借期借期,还期),还期)图书(图书(编号编号,书名,出版社,出版日期,定价),书名,出版社,出版日期,定价)2.3 模型转换2.3 模型转换2、关系模型的优化(、关系模型的优化(3NF标准)标准)(1)表内的每一个值都只能被表达一次。)表内的每一个值都只能被表达一次。例:例:R1(职工,姓名,电话号码)(职工,姓名,电话号码)问题:一人可能有
20、问题:一人可能有1个办公室电话号码和个办公室电话号码和1个家庭个家庭电话号码。电话号码。解决办法:将电话号码分为办公室电话号码和家解决办法:将电话号码分为办公室电话号码和家庭电话号码庭电话号码2个属性。个属性。改为:改为:R1(职工职工,姓名,办公室电话号码,家庭,姓名,办公室电话号码,家庭电话号码)电话号码)2.3 模型转换2、关系模型的优化(、关系模型的优化(3NF标准)标准)(2)表内的每一行都应该被唯一标识。)表内的每一行都应该被唯一标识。例:例:R2(学号学号,课程号,成绩),课程号,成绩)问题:若将学号定位关键字,一个学生选修多门问题:若将学号定位关键字,一个学生选修多门课程,没有
21、被唯一标识。课程,没有被唯一标识。解决办法:将学号、课程号组合为关键字。解决办法:将学号、课程号组合为关键字。改为改为R2(学号学号,课程号课程号,成绩),成绩)2.3 模型转换2、关系模型的优化(、关系模型的优化(3NF标准)标准)(3)表内不应该存储依赖于其他键的非键信息。)表内不应该存储依赖于其他键的非键信息。例:例:R3(学号学号,姓名,系编号,系名称,系地址),姓名,系编号,系名称,系地址)问题:系编号,系名称,系地址等字段将重复存储。问题:系编号,系名称,系地址等字段将重复存储。解决办法:分为解决办法:分为2个关系。个关系。改为:改为:R31(学号学号,姓名,系编号),姓名,系编号
22、)R32(系编号系编号,系名称,系地址),系名称,系地址)2.3 模型转换3、模型转换示例、模型转换示例课本第课本第19页,例页,例2.1思考:该模型有几个实体,分析出各实体的主码?思考:该模型有几个实体,分析出各实体的主码?哪些实体间有联系,分析该联系是哪种类型的联系?并哪些实体间有联系,分析该联系是哪种类型的联系?并 指出主码和外码。指出主码和外码。课本第课本第20页,例页,例2.2思考:该模型有几个实体,分析出各实体的主码?思考:该模型有几个实体,分析出各实体的主码?哪些实体间有联系,分析该联系是哪种类型的联系?并哪些实体间有联系,分析该联系是哪种类型的联系?并 指出主码和外码。指出主码
23、和外码。课堂练习:课堂练习:-图转换成关系模式,并指出图转换成关系模式,并指出主码和外码。主码和外码。商店职工商品商店编号月销售量职工编号商品号商店名商品号单价姓名性别业绩聘期工资地址聘用销售规格m1nn图6.32 一个E-R图仓库号面积电话号码仓库职称职工号姓名年龄职工开工日期项目号预算项目课堂练习:课堂练习:将某工厂的仓库管理将某工厂的仓库管理E-R模型转换为关系模型模型转换为关系模型供应商号 姓名地址电话号帐号供应商(a)某工厂物资管理实体某工厂物资管理实体-联系图(联系图(E-R图)图)零件号名称规格单价供应商号零件仓库号供应商项目零件仓库职工mnnmn1n入库存储保管出库m课堂练习:
24、课堂练习:将某工厂的仓库管理将某工厂的仓库管理E-R模型转换为关系模型模型转换为关系模型转换出来的关系模型转换出来的关系模型 仓库(仓库(仓库号仓库号、面积、电话号码)、面积、电话号码)零件(零件(零件号零件号、名称、规格、单价、供应商号、仓库号)、名称、规格、单价、供应商号、仓库号)供应商(供应商(供应商号供应商号、姓名、地址、电话号码、账号)、姓名、地址、电话号码、账号)职工(职工(职工号职工号、姓名、年龄、职称)、姓名、年龄、职称)项目(项目(项目号项目号、预算、开工日期)、预算、开工日期)入库(入库(供应商号供应商号、零件号零件号)存储(存储(仓库号仓库号、零件号零件号)出库(出库(项
25、目号项目号、零件号零件号)保管(保管(仓库号仓库号、职工号职工号)课堂练习:课堂练习:将某工厂的仓库管理将某工厂的仓库管理E-R模型转换为关系模型模型转换为关系模型2.3 关系的完整性 数据的完整性有完整性规则来定义,关系模型数据的完整性有完整性规则来定义,关系模型的完整性规则是对关系的某种约束条件。的完整性规则是对关系的某种约束条件。1、实体完整性、实体完整性 实体完整性实施在行上。实体完整性实施在行上。规则:若属性规则:若属性A是关系是关系R的主属性,则的主属性,则A不能取空值。不能取空值。解释:在任何关系的任何一条记录中,主属性值的任一数解释:在任何关系的任何一条记录中,主属性值的任一数
26、据项都不允许为空值,而不仅是主码不能取空。据项都不允许为空值,而不仅是主码不能取空。例如,在例如,在学生表学生表中,因学号字段被设为主码,不允许中,因学号字段被设为主码,不允许为空值,即每一个学生必须有一个对应的学号。为空值,即每一个学生必须有一个对应的学号。例如,在例如,在成绩表成绩表中,学号和课程号组合成主码,这两中,学号和课程号组合成主码,这两个字段都不能取空值。个字段都不能取空值。2、域完整性(也称用户自定义完整性)、域完整性(也称用户自定义完整性)域完整性实施在列上。域完整性实施在列上。规则:由用户针对某一具体数据库的约束条件,把属性限制在一规则:由用户针对某一具体数据库的约束条件,
27、把属性限制在一个有限的集合中。个有限的集合中。解释:它由应用环境决定,反映了某一具体应用所涉及的数据必解释:它由应用环境决定,反映了某一具体应用所涉及的数据必须满足的语义要求。如数据类型、格式、值域范围、是否允许空须满足的语义要求。如数据类型、格式、值域范围、是否允许空值等。值等。例如,学生的性别只能是例如,学生的性别只能是“男男”或或“女女”两种可能,不能是其它两种可能,不能是其它值。值。例如,成绩的取值只能限制在数字例如,成绩的取值只能限制在数字0100之间才合乎情理。之间才合乎情理。例如,年龄只能是大于例如,年龄只能是大于“0”的正整数。的正整数。2.3 关系的完整性2.3 关系的完整性
28、3、参照完整性、参照完整性 实体与实体之间往往存在某种依存关系,这种依存关系实体与实体之间往往存在某种依存关系,这种依存关系叫做联系。在关系模型中实体及实体间的联系都是用关系来叫做联系。在关系模型中实体及实体间的联系都是用关系来描述的,这样就自然存在着关系与关系间的引用,即关系参描述的,这样就自然存在着关系与关系间的引用,即关系参照的完整性。照的完整性。在一个关系模型中,关系在一个关系模型中,关系R中的外码对应另一个关系中的外码对应另一个关系S的主码(关系的主码(关系R和和S不一定是不同的关系),关系不一定是不同的关系),关系R中外码中外码的取值要参照另一个关系的取值要参照另一个关系S主码的取
29、值。此时,主码的取值。此时,R为参照关为参照关系,系,S为被参照关系。为被参照关系。参照完整性规则:定义外码与主码之间的引用和参照规参照完整性规则:定义外码与主码之间的引用和参照规则,参照关系的外码取值不能超出被参照关系的主码取值。则,参照关系的外码取值不能超出被参照关系的主码取值。2.4 关系的完整性4、完整性检查、完整性检查 1)执行插入()执行插入(INSERT)记录操作时的检查。)记录操作时的检查。检查实体完整性检查实体完整性=检查参照完整性检查参照完整性=检查域完整性。检查域完整性。2)执行删除()执行删除(DELETE)记录操作时的检查。)记录操作时的检查。仅检查参照完整性,不检查
30、实体完整性和域完整性。仅检查参照完整性,不检查实体完整性和域完整性。3)执行修改()执行修改(UPDATE)记录操作时的检查。)记录操作时的检查。先删除记录,再插入记录。先删除记录,再插入记录。例:学生表(例:学生表(学号学号,姓名,性别,入学时间,出生日期,籍贯),姓名,性别,入学时间,出生日期,籍贯)成绩表(成绩表(学号学号,课程号课程号,成绩),成绩)向学生表中插入记录没有限制;向成绩表中插入记录时,学号不能向学生表中插入记录没有限制;向成绩表中插入记录时,学号不能为空值,且要求学号的值必须是从为空值,且要求学号的值必须是从学生表学生表的主码学号中选取的值。的主码学号中选取的值。删除课程
31、表中某个学生的成绩记录没有限制;删除学生表中某个学删除课程表中某个学生的成绩记录没有限制;删除学生表中某个学生的记录,则要检查成绩表中是否有该学生的成绩记录,若有,要么不生的记录,则要检查成绩表中是否有该学生的成绩记录,若有,要么不能删除该学生记录,要么将该学生的成绩记录级联删除。能删除该学生记录,要么将该学生的成绩记录级联删除。关系数据库设计的一般步骤关系数据库设计的一般步骤 1、确立建立数据库的目的:用数据库管理哪些数据,、确立建立数据库的目的:用数据库管理哪些数据,有哪些需求和功能。有哪些需求和功能。2、确定所需要的表:把信息分成各个独立的主题,每、确定所需要的表:把信息分成各个独立的主
32、题,每一主题可以是数据库中的一个表。一主题可以是数据库中的一个表。3、确定所需要的字段:每个表中要保存哪些信息。、确定所需要的字段:每个表中要保存哪些信息。4、确定关系:分析每个表,确定表中的数据和其他表、确定关系:分析每个表,确定表中的数据和其他表中的数据有何关系。中的数据有何关系。5、改进设计:对设计作进一步分析,查找其中的错误,、改进设计:对设计作进一步分析,查找其中的错误,需要时可调整设计。需要时可调整设计。2.5 关系数据库设计实例 1、确立建立数据库的目的:用数据库管理哪些数据,、确立建立数据库的目的:用数据库管理哪些数据,有哪些需求和功能。有哪些需求和功能。建立建立CJGL数据库
33、:数据库:成绩管理系统成绩管理系统不仅要对学生的成绩不仅要对学生的成绩进行管理,还要对与学生成绩有关的其他信息进行管理,如学生进行管理,还要对与学生成绩有关的其他信息进行管理,如学生的基本信息、系部信息、班级信息、课程信息等管理模块,对每的基本信息、系部信息、班级信息、课程信息等管理模块,对每类信息的管理一般都应具有增加、删除、修改和查询功能,有些类信息的管理一般都应具有增加、删除、修改和查询功能,有些信息还要对其进行统计和分析。该系统的功能划分设计框图见下信息还要对其进行统计和分析。该系统的功能划分设计框图见下页。页。2.5 关系数据库设计实例关于软件课程信息查询与修改系部录入班级录入学生基
34、本信息录入课程信息录入学生成绩录入系部查询与修改班级查询与修改学生基本信息查询学生基本信息编辑学生成绩查询辑学生成绩编辑超级用户普通用户数据录入查寻与修改用户管理帮助学生成绩管理系统2.5 关系数据库设计实例“成绩管理系统成绩管理系统”功能划分如下图功能划分如下图 2、确定所需要的表:把信息分成各个独立的主题,每一主题可、确定所需要的表:把信息分成各个独立的主题,每一主题可以是数据库中的一个表。以是数据库中的一个表。CJGL数据库需设系部、班级、学生、课程、成绩等数据库需设系部、班级、学生、课程、成绩等5个数据表。个数据表。2.5 关系数据库设计实例 3、确定所需要的字段:每个表中要保存哪些信
35、息。、确定所需要的字段:每个表中要保存哪些信息。各个数据表包含的字段为:各个数据表包含的字段为:1)系部表)系部表Department:系部编号:系部编号DepNo、系部名称、系部名称DepName。2)班级表)班级表Class:班级编号:班级编号ClaNo、班级名称、班级名称ClaName、系、系部编号部编号DepNo、班级人数、班级人数Number。3)学生表)学生表Student:学生编号:学生编号StuNo、姓名、姓名StuName、性别、性别Sex、班级编号、班级编号ClaNo、入学时间、入学时间Enrolltime、籍贯、籍贯City、出生、出生日期日期Birthday、备注、备注
36、Notes。4)课程表)课程表Course:课程编号:课程编号CouNo、课程名称、课程名称CouName、课程类别课程类别Kind、学分、学分Credit、学期、学期Term、任课老师、任课老师Teacher。5)成绩表)成绩表Score:学生编号:学生编号StuNo、课程编号、课程编号CouNo、成绩、成绩Grade。2.5 关系数据库设计实例 4、确定表间关系:分析每个表,确定表中的数据和其他表中、确定表间关系:分析每个表,确定表中的数据和其他表中的数据有何关系。的数据有何关系。1)学生表)学生表.学生编号学生编号成绩表成绩表.学生编号学生编号 2)课程表)课程表.课程编号课程编号成绩表
37、成绩表.课程编号课程编号 3)系部表)系部表.系部编号系部编号班级表班级表.系部编号系部编号 4)班级表)班级表.班级编号班级编号学生表学生表.班级编号班级编号 5、改进设计:对设计作进一步分析,查找其中的错误,需要时、改进设计:对设计作进一步分析,查找其中的错误,需要时可调整设计。可调整设计。2.5 关系数据库设计实例本章小结本章小结 本章主要介绍了关系数据库的主要术语(表、本章主要介绍了关系数据库的主要术语(表、记录、字段、主码、外码、数据项)、运算(选记录、字段、主码、外码、数据项)、运算(选择、投影、连接)、完整性(实体完整性、域完择、投影、连接)、完整性(实体完整性、域完整性、参照完
38、整性)等知识。整性、参照完整性)等知识。本章的重点是模型的转换,要求能理解和运本章的重点是模型的转换,要求能理解和运用这些关系数据库的相关知识完成从概念模型到用这些关系数据库的相关知识完成从概念模型到关系模型的转换;通过关系数据库设计实例理解关系模型的转换;通过关系数据库设计实例理解关系数据库设计步骤和方法。关系数据库设计步骤和方法。人有了知识,就会具备各种分析能力,人有了知识,就会具备各种分析能力,明辨是非的能力。明辨是非的能力。所以我们要勤恳读书,广泛阅读,所以我们要勤恳读书,广泛阅读,古人说古人说“书中自有黄金屋。书中自有黄金屋。”通过阅读科技书籍,我们能丰富知识,通过阅读科技书籍,我们能丰富知识,培养逻辑思维能力;培养逻辑思维能力;通过阅读文学作品,我们能提高文学鉴赏水平,通过阅读文学作品,我们能提高文学鉴赏水平,培养文学情趣;培养文学情趣;通过阅读报刊,我们能增长见识,扩大自己的知识面。通过阅读报刊,我们能增长见识,扩大自己的知识面。有许多书籍还能培养我们的道德情操,有许多书籍还能培养我们的道德情操,给我们巨大的精神力量,给我们巨大的精神力量,鼓舞我们前进鼓舞我们前进。
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。