数据库原理第2章_第1页
数据库原理第2章_第2页
数据库原理第2章_第3页
数据库原理第2章_第4页
数据库原理第2章_第5页
已阅读5页,还剩41页未读, 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、上节课复习举例说明码有可能不仅仅是一个属性,而是一个属性集?E-R图中采用的各种符号及代表的含义。联系可以有哪几种,各举一例。数据库系统的组成有哪些。学号 课程号 成绩 1 01 90 1 02 85 2 02 67第二章 关系数据库本章要点:了解关系的基本概念,及相关的名词。掌握关系模型的3大内容,重点掌握关系的完整性约束。掌握关系代数的运算,熟练编写各种关系代数表达式。分析?“课程”表该表的结构由哪些部分组成?表名,表头,行,列第二章 关系数据库2.1关系模型的基本概念一、关系的通俗解释1.关系:一个关系对应一张二维表,二维表的表名即为关 系名。关系是由表名,列名及若干行组成。2.关系模式

2、:对关系数据结构的描述。 关系名(属性名1,属性名2,属性名n) 3.元组 :二维表中的一行称为关系的一个元组,或称为记录 4.属性 :二维表中的列称为关系的属性,或称为字段,每一 个属性有一个属性名 。5.主码 :关系中的某个属性或属性组,能惟一地标识一个元 组,又称为主键或关键字 。学生选课登记表学号姓名专业选修课程任课教师940876950210950986950997张 伟李东清徐 风田 伟计算机软件计算机应用计算机应用计算机软件数据结构计算机原理数据结构程序设计语言袁 鹏王雪松袁 鹏刘先明表,即关系行,元组,记录列,字段,属性提问:根据此表,指出什么是关系,关系名和关系模式是什么?

3、列和行在数据库中分别叫做什么。 该关系模式的主键是什么?关系名:学生选课登记表关系模式:学生选课登记表(学号,姓名,专业,选修课程,任课教师)关系模式和关系的异同学生选课登记表(学号,姓名,专业,选修课程,任课教师)学号姓名专业选修课程任课教师940876950210950986950997张 伟李东清徐 风田 伟计算机软件计算机应用计算机应用计算机软件数据结构计算机原理数据结构程序设计语言袁 鹏王雪松袁 鹏刘先明它们两者是型与值的关系,关系模式描述关系的信息结构,它是相对稳定的,一旦确定下来不随意更改。而关系则是某一时刻关系模式的“当前值”,随时间的变化而变化的。(鲍小仁, 男,信息管理),

4、 (鲍小仁, 男,网络通讯), (鲍小仁, 女,信息管理), (鲍小仁, 女,网络通讯), (屠 敏, 男,信息管理), (屠 敏, 男,网络通讯), (屠 敏, 女,信息管理), (屠 敏, 女,网络通讯),D1=学生集合=鲍小仁,屠敏D2=性别集合=男,女D3=专业集合=信息管理,网络通讯分析?1. 笛卡尔积二、关系的数学定义设D1,D2,Dn为n个集合,称D1D2Dn=(d1,d2,dn)| diDi,i=1,2,n为集合D1,D2,Dn的笛卡尔积。 例如,我们给出3个集合D1=学生集合=鲍小仁,屠敏D2=性别集合=男,女D3=专业集合=信息管理,网络通讯则D1D2D3的笛卡尔积为 基数

5、M为:表2.2 笛卡尔积P20页表2.2笛卡尔积为:D1 D2 D3= ?基数M为多少?(李杰,王梅,李飞),(李杰,王梅,张玉),(李杰,王梅,张祥), (李杰,吴芳,李飞),(李杰,吴芳,张玉),(李杰,吴芳,张祥), (张丰,王梅,李飞),(张丰,王梅,张玉),(张丰,王梅,张祥), (张丰,吴芳,李飞),(张丰,吴芳,张玉),(张丰,吴芳,张祥),提问?例如: D1=李杰,张丰 D2=王梅,吴芳 D3=李飞,张玉,张祥2. 关系笛卡尔积D1D2Dn的子集称为D1,D2,Dn上的关系,记为R(D1,D2,Dn)。 表2.2 笛卡尔积表2.3 关系 数据库中的关系有以下性质:(1)关系中的

6、每一个属性是不可分解的数据项。(2)关系中的列是同质的。来自于同一个值域。(3)列又称为属性,每一列必须有确定,互异的列名。(4)关系中元组的顺序(即行序)可以任意互换。(5)关系中属性的顺序(即列序)可以任意互换。(6)同一个关系中不允许出现完全相同的元组。 思考?对于以上的性质1-3,6请各举一个反例。学号姓名成绩英语数学1张三789024李四5667学号姓名英语1张三7824李四5623丁一良学号姓名成绩成绩1张三789024李四566723丁一良78学号姓名英语数学1张三789024李四56671张三7890上节课复习以下表为例说明什么是关系、关系模式,属性,元组,主码。一个关系中行或

7、列的顺序可以换吗,允许出现相同的行或列吗?在关系中,有时候根据需要同一列可以是不同的类型,比如说成绩可以是分数也可以是优良中等。学生登记表学号姓名专业940876950210950986950997张 伟李东清徐 风田 伟计算机软件计算机应用计算机应用计算机软件三、关系模型 关系模型建立在集合论的基础上,与层次模型、网状模型相比较,是现代数据库理论中更为常用、重要的一种数据模型。 1. 关系数据结构 关系模型中数据的逻辑结构是一张二维表。2.关系操作集合 关系的操作是高度非过程化的,分为两大类: (1)关系代数。(2)关系演算。 3.关系的完整性约束 思考?在一张学生基本情况表里要输入这个同学

8、所在的系名,其中这个学校所包含的系都在一张名为“系基本情况”表里,请问这个时候在学生基本情况表里输入系别时要注意什么? 外关键字 实体完整性 关系的主码属性上不能取空值。3.关系的完整性约束 参照完整性学生信息表(学号,姓名,性别,年龄,专来,生源地) 外码的定义 书P21最后一行例如:有两个关系 学生(学号,姓名,系号) 系(系号,系名,系主任)参照完整性规则:外码的值或者取空值,或者等于另一表中某个元组的主码值。 用户自定义完整性1. 在如下模式中,实体完整性规则指什么? 成绩(学号,课程号,得分)2.请找出以下关系模式中的外码,并说明它的取值约束?学生信息表(学号#,姓名,性别,年龄,专

9、业,生源地)课程开设表(课程名#,学分,教材,教师)学生成绩表(学号#,课程名#,成绩) 思考?操作1. 在stu数据库上验证实体完整性规则。2. 在stu数据库上利用在学生选修表,也就是stu_course表中只能输入student和course表中存在的学号和课程号来验证参照完整性规则。提问?AB在集合操作中:蓝色的,红色的,黑色的,蓝色+黑色+红色各是用什么表达式来表示的?2.2关系代数一、传统的集合运算1.并运算 RUS 由属于R或属于S的元组组成的集合。3.交运算 R S 同时属于R和S的所有元组组成的集合。 2.差运算 R-S 由属于R而不属于S的所有元组组成的集合。 举例RSR

10、S RUSR - SABCaabcddefeABCaabdgdffeRSecaCBAfeddabCBAefefcddgaabaCBAR S RUSR - S 请写出:RUS, R S, R - S练习4.笛卡尔积 R S关系R中的每一个元组与S中的所有的元组的组合。RSa1bb1ba3ab1ba1bb2da3ab2da1ba3ca3aa3ca1ba3aa3aa3aS.CS.BS.AR.CR.BR.AR SABC147258369BD5872TQ336699C585858Q.B727272225588114477DT.BAT Q提问?T Q思考?“成绩”表“学生”表这是存在数据库中的两个表,而在

11、实际中,我们往往需要的是其中的部分数据,甚至是两个表的综合信息,比如:姓名,课程号,成绩,该如何办?二、专门的关系运算1.选择运算: F(R)根据给定的条件在关系中选择符合条件的元组。2.投影运算: A(R)根据给定的列表选取关系中指定的属性。 从R和S的笛卡尔积(RS)中选择出属性A、B满足某种条件的子集。 3.联接运算: R S举例F为逻辑表达式,可以使用“、=、”之类的算术运算符,也可以使用“ (非)、(与)、(或)”之类的逻辑运算符。 举例RSB=3(R)B3A=b(R) A,C(R) C(R)R Ssnosnamessexsagesdept95001950029500395004李勇

12、刘晨王名张立男女女男20191819计算机系英语系数学系英语系表student指出以下属于什么操作及操作后的结果1. sdept=“英语系”(student)2.sage20(student)3. sname,sdept(student)ABCa1a1a2a2b1b2b3b456812BEb1b2b3b3b5371022RS求:R SCE练习snamesdept李勇刘晨王名张立计算机系英语系数学系英语系snosnamessexsagesdept950029500395004刘晨王名张立女女男191819英语系数学系英语系snosnamessexsagesdept9500295004刘晨张立女男

13、1919英语系英语系 sname,sdept(student)sdept=“英语系”(student)sage20(student)AR.BCS.BEa1a1a1a1a2b1b1b2b2b355668b2b3b2b3b371071010R SCE4.自然连接运算: R S从两个关系的笛卡尔积中选择出公共属性值相等的那些元组,并去除重复属性构成的关系。 RSR S 思考:若用选择,投影与笛卡尔积来描述,如何描述?= A,B,C,D,E,F(R.C=S.C R.D=S.D(RS)R S ABCEa1a1a2a2b1b2B3b3568837102 R SABCa1a1a2a2b1b2b3b45681

14、2BEb1b2b3b3b5371022RS思考?课前提问1.选择、投影、连接、自然连接运算的符号为什么?snosnamessexsagesdepno95001950029500395004李勇刘晨王名张立男女女男20191819010203022.根据以下的关系,按要求给出表达式。 查询性别为男生的元组。 查询系别为01的女生的元组。 显示学生的姓名,性别。 显示学生的姓名,系名。 sdepnodep010203计算机系英语系数学系studentdepart4.除法运算 RS除法运算的结果是这样的一个关系,属性是属于R而不属于S的属性组成,元组是S中的所有元组都能在R中找到对应,并且余留的属性

15、相同。 RSTRSRTS#C#G#101101101102102103104105105c1c2c3c2c3c1c3c2c4ABCCACBBASC#c3C#c1c2C#G#c2BS#G#101102104CABS#101105S#101R3SR3S#,C#(S)R2S R1R2R1思考?三、关系代数表达式1.查询电子技术专业的全体学生。 “成绩”表“课程”表“学生”表专业=”电子技术”(学生)或5=”电子技术”(学生) 三、关系代数表达式2.查询所有成绩不合格的记录。“成绩”表“课程”表“学生”表成绩 60(成绩)或3 60(成绩) 三、关系代数表达式3.查询学生的姓名和所读的专业。 “成绩”表“课程”表“学生”表姓名,专业(学生) 或 2,5(学生)三、关系代数表达式4.查询所有开考的课程。 “成绩”表“课程”表“学生”表课程号(成绩) 或 2(成绩) 三、关系代数表达式思考:查询所有未开考的课程号。 “成绩”表“课程”表“学生”表课程号(课程)-课程号(成绩) 三、关系代数表达式5.查询所有有不及格成绩的课程名。 “成绩”表“课程”表“学生”表课程名(课程 成绩60(成绩)) 三、关系代数表达式6.查询“鲍小仁”同学各门课程的成绩。 “成绩”表“课程”表“学生”表姓名=鲍小仁 (学号,姓名(学生) 成绩 三、关系代数表达式“成绩”表“课程”表“学生”表思

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论