《数据库教案关系模型ppt课件.ppt》由会员分享,可在线阅读,更多相关《数据库教案关系模型ppt课件.ppt(67页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去第三章第三章 关系模型关系模型-本本章内容章内容基础知识回顾关系模型概述关系模型基本概念关系模型的完整性约束关系代数逻辑数据库设计:ER到关系的转换关系演算火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去基础知识回顾p数据库发展以数据模型划分第一代网状、层次数据库系统。代表:1969年IBM的IMS(information Management System);美国 CODASYL(Conference On Data Syst
2、em Language)下属的 DBTG(Data Base Task Group)于60年代末70年代初提议的方法。层次数据库是数据库的先驱,而网状数据库是数据库概念、方法、技术的奠基者。第二代关系数据库系统。1970年IBM公司的研究员E.F.Codd提出了数据库的关系模型,关系方法和关系数据理论的研究。代表:IBM的System R 和Berkele大学的INGRES,成果:奠定了关系模型的理论基础;研究了关系数据库语言,有关系代数、关系演算、SQL语言、QBE等;研制了大量的RDBMS的原型,实现了查询优化、并发控制、故障恢复等关键技术;火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物
3、,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去基础知识回顾p数据库发展第三代以面向对象数据模型为主要特征的数据库系统。模型更加丰富、数据管理功能功能更加强大、能支持传统数据库难以支持的新的应用。特征:支持数据管理、对象管理和知识管理;保持或者继承第二代数据库的技术;对其他系统开放(支持数据库语言标准和标准网络协议)。仅支持面向对象数据模型并不能称为第三代数据库系统。火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去基础知识回顾p关系数据库系统关系数据库系统。产品的发展情况:(1)对关系模型的支持:第一阶段(70年代):仅支
4、持关系数据结构、基本的关系操作(选择、投影、连接)。如:dBASE 第二阶段(80年代):SQL成为关系数据库语言的国际标准第三阶段(90年代):加强了完整性、安全性的支持。(2)运行环境:第一阶段:在大、中、小型机上的RDBMS,多用户系统第二阶段:提高可移植性,能在多种硬件平台、和操作系统环境下运行;联网,向分布式发展,支持多种协议。第三阶段:分布式数据库和客户/服务器结构的数据库系统的推出。追求开放性(可移植性、可连接性、可伸缩性)。火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去基础知识回顾p关系数据库系统关系数据库系统。产品
5、的发展情况:(3)RDBMS系统构成:第一阶段:早期的RDBMS产品主要提供数据定义、数据存取、数据控制等基本操作和数据存储组织、并发控制、安全性、完整性检查、系统恢复等RDBMS的核心功能。第二阶段:以RDBMS基本功能为核心,开发外围软件系统,如:FORM报表生成系统,REPORT报表系统、MENU菜单生成系统、GRAPHIC图形软件等等。为用户提供了良好的第四代应用开发环境。(4)对应用的支持:第一阶段:用于信息管理、辅助决策等应用领域。第二阶段:联机事务处理的应用领域,提高RDBMS事务处理的能力。第三阶段:由集中到分布,由局部到整个企业甚至整个行业。支持整个企业的联机事务处理。火灾袭
6、来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去关系模型概述p为什么要学习关系模型?关系模型是目前广泛使用的一种数据模型IBM DB2,Miscrosoft SQL Server,Informix,Oracle,Sybase,.仅有少量的遗产系统使用旧的数据模型IBM的IMS目前仍在使用目前关系模型的竞争者:面向对象的数据模型Objectstore,Versant,Ontos,.对象关系模型:Informix Universal Server,UniSQL,O2,ORACLE,DB2,.火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当
7、机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去关系模型概述关系数据模型是由E.F.Codd于1970年提出在此之前大多数数据库系统是基于层次数据模型和网状数据模型的关系模型给数据库领域带来了一场革命,并取代了旧的数据模型,E.F.Codd并因此于1983年获得Turing Awards在70年代中期,IBM和UC-Berkeley开发了早期的关系型数据库管理系统火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去关系模型概述现在的关系型数据库系统有IBM的DB2InformixOracleSybaseMicrosoft的Acces
8、s,SQL ServerFox-xParadox火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去关系模型概述p关系模型是十分简单的关系模型的数据结构非常单一,实体、联系都表示成关系一个关系是一个具有行和列的二维表关系模型给出关系操作的能力,但不对RDBMS语言给出具体的语法要求查询操作:选择、投影、连接、除、并、交、差等更新操作:增加、删除和修改一次一集合关系代数和关系演算高度非过程化火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去关系模型概述关系模型的三类完整性约束系统支持
9、:实体完整性和参照完整性用户定义:用户定义的完整性p本章主要讨论以下问题关系模型是如何表示数据的关系模型可以表示何种完整性约束数据是如何被查询的如何将由ER模型表示数据库概念模式转换为关系模式(模式)的视图(外模式)问题火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去关系模型基本概念q关系域:一组具有相同数据类型值的集合笛卡尔积:给定一组域D1,D2,Dn,它们的笛卡尔积为:D1XD2XDn=(d1,d2,dn)|diDi,i=1,2,n)元组:每一个元素(d1,d2,dn)叫做一个n元组,或元组分量:元素中的每一个值di叫做一个分量
10、基数:若Di为有限集,其基数为mi,则D1XD2XDn的基数为:火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去关系模型基本概念q例如:给定三个域D1=MAN=王兵,李平,张英,D2=WOMAN=丁梅,吴芳 D3=CHILD=王一,李一,李二qD1XD2XD3=(王兵,丁梅,王一),(王兵,丁梅,李一),(王兵,丁梅,李二),(王兵,吴芳,王一),(王兵,吴芳,李一),q笛卡尔积可以表示为一个二维表,表中的每一行对应一个元组,每一列对应一个域火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被
11、褥勇敢地冲出去关系模型基本概念MAN WOMAN CHILD王兵 丁梅 王一王兵 丁梅 李一王兵 丁梅 李二王兵 吴芳 王一王兵 吴芳 李一王兵 吴芳 李二李平 丁梅 王一李平 丁梅 李一李平 丁梅 李二李平 吴芳 王一李平 吴芳 李一李平 吴芳 李二MAN WOMAN CHILD张英 丁梅 王一张英 丁梅 李一张英 丁梅 李二张英 吴芳 王一张英 吴芳 李一张英 吴芳 李二续左表火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去关系模型基本概念q关系:D1XD2XDn的子集叫做在域D1,D2,Dn上的关系表示为R(D1,D2,Dn)关
12、系的目或度:n单元关系:n=1二元关系:n=2关系是一个二维表(子集)例如:假设王兵的妻子是丁梅,他们的孩子是王一,李平的妻子是吴芳,他们的孩子是李一和李二,则取笛卡尔积的一个子集构造一个关系FAMILY火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去关系模型基本概念在R(D1,D2,Dn)表示中,域可以重名,给每列一个名字,称为属性,关系表示为:R(A1,A2,An)例如:FAMILY(FATHER,MOTHER,CHILD)MAN WOMAN CHILD王兵 丁梅 王一李平 吴芳 李一李平 吴芳 李二FAMILY火灾袭来时要迅速疏
13、散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去关系模型基本概念候选码:能够唯一标识一个元组的最小属性组主码:主属性:候选码中的属性非码属性:不包含在任何候选码中的属性p关系的性质:关系模型要求在一个关系中不能存在完全相同的元组(但实际商用关系数据库系统支持重复元组)关系中元组行的序并不重要关系中列的序并不重要(但有些系统例外)火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去关系模型基本概念分量必须取原子值不同的列可以出自同一个域给定域:person=王兵,李平,张英,丁梅,吴芳 child=
14、王义,李一,李二MAN WOMAN CHILD first second王兵 丁梅 王一李平 吴芳 李一 李二FAMILYbad火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去关系模型基本概念构造FAMILY关系,仍然取person X person X child的子集,表示为:FAMILY(FATHER,MOTHER,CHILD)此处dom(FATHER)=dom(MOTHER)=personr关系模式:关系的描述形式化表示:R(U,D,dom,F),简记为R(U)或R(A1,A2,An)属性向域的映象常常说明为属性的类型和长度关
15、系模式是型,关系是值火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去关系模型基本概念r在关系模型中,实体和联系都是用关系表示的 例如:左图 学生(学号,姓名,性别,专业,年龄)课程(课程号,课程名,学时,学分)选修(学号,课程号,成绩)r一个关系数据库是一组关系的集合;关系数据库模式则是该数据库所有关系模式的集合学生课程选修mn火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去关系模型-关系的完整性r关系模型的完整性是对关系的某种约束r实体完整性:主码中的属性不可取空值(例子)
16、r参照完整性:例子:对于关系模式 学生(学号,姓名,性别,专业,年龄)课程(课程号,课程名,学时,学分)选修(学号,课程号,成绩)外码:设F是关系R的一个或一组属性,但不是关系R的码,如果F与关系S的主码Ks相对应,则称F为关系R的外码火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去关系模型-关系的完整性参照关系R,被参照关系S参照完整性:F的取值必须为:或者取空值或者等于S中某个元组的主码值例如:部门(部门号,部门名,电话)雇员(雇员号,雇员名,职称,部门号)雇员中部门号的取值部门雇员拥有1n火灾袭来时要迅速疏散逃生,不可蜂拥而出或
17、留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去关系模型-关系的完整性r用户定义的完整性:任何关系数据库系统都应支持实体完整性和参照完整性用户定义的完整性定义某一具体应用中所涉及的数据必须满足的语义要求,例如年龄的取值关系数据库系统提供定义和检验这类完整性机制火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去关系模型-关系代数r关系代数运算分为:传统的集合运算和专门的关系运算r集合运算前提:关系R和关系S具有相同的目,相应的属性取自同一个域并:关系R和关系S的并记作:RS(下页)差:关系R和关系S的差记作:R-S交:
18、关系R和关系S的交记作:RS火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去关系模型-关系代数A B C A B C A B C a1 b1 c1 a1 b2 c2 a1 b1 c1 a1 b2 c2 a1 b3 c2 a1 b2 c2 a2 b2 c1 a2 b2 c1 a2 b2 c1 a1 b3 c2 A B C A B Ca1 b2 c2 a1 b1 c1a2 b2 c1RSR SR SR-S火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去关系模型-关系代数RSA B
19、 C A B C A B C a1 b1 c1 a1 b1 c1 a1 b2 c2a1 b2 c2 a1 b1 c1 a1 b3 c2a2 b2 c1 a1 b1 c1 a2 b2 c1 a1 b2 c2 a1 b2 c2 A B C a1 b2 c2 a1 b3 c2a1 b2 c2 a1 b2 c2 a2 b2 c1a1 b3 c2 a2 b2 c1 a1 b2 c2 a2 b2 c1 a2 b2 c1 a1 b3 c2 a2 b2 c1 a2 b2 c1RS火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去关系模型-关系代数广义笛
20、卡尔积:两个分别为n和m目的关系R和S的广义笛卡尔积是一个n+m列的元组的集合。若R有k1个元组,S有k2个元组,则广义笛卡尔积有k1k2个元组记作:R S火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去关系的建立和修改关系的建立和修改-SQL-92pSQL语言的简单发展历史SQL语言是由IBM公司在System R系统中首先提出SQL在1986年被ANSI采纳为标准,称为SQL-86在1989又对SQL标准进行了少量修改,称为SQL-89在1992年ANSI和ISO对SQL标准进行主要修改,称之为SQL-92在1999年又对SQL-
21、92进行大量修改(面向对象的特点),称之为SQL-3,有时也称为SQL-99火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去关系的建立和修改关系的建立和修改关系表建立CREATE TABLE Students(sid CHAR(20),name CHAR(30),login CHAR(20),age INTEGER,gpa REAL)关系表删除DROP TABLE Students关系表修改ALTER TABLE Students ADD COLUMN maiden-name CHAR(10)火灾袭来时要迅速疏散逃生,不可蜂拥而出或留
22、恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去关键字约束-实现实体完整性p通过UNIQUE子句来定义候选码(候选关键字)p通过PRIMARY KEY子句来定义主码(主关键字)CREATE TABLE Students(sid CHAR(20),name CHAR(30),login CHAR(20),age INTEGER,gpa REAL,UNIQUE(name,age),UNIQUE(login),PRIMARY KEY(sid)外键约束外键约束-实现参照完整性实现参照完整性p外键约束指的是两个关系之间的关键字约束关系,考虑下列关系Students(sid,name,l
23、ogin,age,gpa)Enrolled(sid,cid,grade)p从语义上来讲,在关系Enrolled中出现的sid值,在关系Students中必须存在,Enrolled中的sid称为外键,引用关系Students中的主关键字sidp外键必须与被引用关系中的主关键字相匹配可以有不同的名字列数要相同,且要具有兼容的数据类型火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去外键约束外键约束-示例示例火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去外键约束的语义p在被参照关系
24、中关键字的值在参照关系中不一定出现p但在参照关系中出现的关键字值在被参照关系中必须要出现p如果我们向关系Enrolled中插入元组,这个操作将被拒绝因为违反了外键约束外键约束的语义p对于操作:将关系Students中的删除,有两种处理禁止这种删除操作同时删除参照关系中的相关元组p值得注意的是外键可能来自于同一关系,也就是被参照关系就是参照关系Students(sid,name,login,age,gpa,partner),partner是对sid的一个外键约束Courses(cid,name,desc,preq),preq是对cid的一个外键约束当一门课程没有前期课程时,preq可以为空,空值
25、并不违反外键约束火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去外键约束的定义-SQL-92火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去逻辑数据库设计:逻辑数据库设计:ER到关系的转换到关系的转换p实体集到表的转换实体集中的属性映射为表中的属性实体集中的(主)关键字映射为关系中的(主)关键字实体集中属性的域映射为关系中属性的域火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去实体集到表的转换-示例火灾袭来时要迅速疏
26、散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去多对多联系集到表的转换多对多联系集到表的转换p多对多联系被映射为一个关系表,包括属性:每个参加联系的实体集的主关键字属性,作为外键存在所有外键构成该实体集的主关键字联系集本身的属性-一般属性火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去多对多联系集到表的转换多对多联系集到表的转换-例例1mn火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去多对多联系集到表的转换多对多联系集到表的转换-例
27、例1火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去多对多联系集到表的转换多对多联系集到表的转换-例例2mnp火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去多对多联系集到表的转换多对多联系集到表的转换-例例2CREATE TABLE Work3-In(ssn CHAR(11),did integer,from date,to date,PRIMARY KEY(ssn,did,from,to)FOREIG KEY(ssn)REFERENCES Employees,ON DEL
28、ETE NO ACTION,FOREIG KEY(did)REFERENCES Departments,FOREIGN KEY(from)REFERENCE DURATION,FOREIGN KEY(to)REFERENCE DURATION)火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去一对多联系集的翻译一对多联系集的翻译1n火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去一对多联系集的翻译一对多联系集的翻译-方法一方法一将一对多联系翻译为一个独立的表将一对多联系翻译为一
29、个独立的表火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去一对多联系集的翻译一对多联系集的翻译-方法二方法二将Manages和Departments翻译为一个关系火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去关于联系集到关系映射的思考题关于联系集到关系映射的思考题在一对多联系中,Manages和Departments 为什么可以合并为一个关系?对于一对多联系翻译的两种方法的优缺点是什么?对于一个多对多联系集为什么必须映射为一个独立的关系表?一对一联系应如何翻译?火灾袭来时要
30、迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去思考题部分答案思考题部分答案p方法一和方法二的优缺点方法一多产生一个关系对于有些查询,方法一需要两次连接,而方法二只需要一次连接即可方法二的缺点是浪费空间,如果有些部门没有经理的话火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去具有参加约束的联系集的翻译具有参加约束的联系集的翻译1nnm火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去具有参加约束的具有参加约束的1:n(1:1)联系
31、集的翻译联系集的翻译火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去具有参加约束的联系集的翻译具有参加约束的联系集的翻译pssn的非空定义反映了参加约束p使用上面的第一种方法也可以表示Manages和Departments,但使用方法二比方法一好,(why?因为方法二浪费空间的缺点已不复存在)火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去弱实体集的翻译弱实体集的翻译p一个弱实体总是参加一个二元一对多联系(?)p全参加约束1m火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,
32、要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去弱实体集的翻译弱实体集的翻译p使用具有1:n联系的第二种翻译方法(Why?),但必须考虑下面的具体要求必须考虑弱实体集有一个部分关键字当一个Owner实体被删除以后,弱实体集中相应的实体也应被删除火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去弱实体集的翻译弱实体集的翻译火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去类层次的翻译类层次的翻译火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或
33、裹上湿毛毯、湿被褥勇敢地冲出去类层次的翻译类层次的翻译-方法一p三个实体集翻译成三个关系实体集Employees的翻译比较简单关系Hourly_Emps的属性包括:ssn,hourly_wages,hours_worked,;ssn是主关键字;同时ssn一个外键;当超类中实体被删除时子类中的对象也必须删除 Contract_Emps的翻译相类似思考题:为什么在关系Hourly_Emps的属性中不包含属性name和lot?体现继承性了吗?火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去类层次的翻译类层次的翻译-方法一CREATE TAB
34、LE Hourly_Emps(ssn CHAR(20),hourly_wages REAL,hours_worked INTEGER,PRIMARY KEY(ssn),FOREIG KEY(ssn)REFERENCES Employees,ON DELETE CASCADE)火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去类层次的翻译类层次的翻译-方法二p三个实体集翻译成两个关系仅生成两个关系:Hourly_Emps和Contract_Emps,他们都包含超类Employees的属性,除了主关键字约束以外,不需要定义任何约束当然,对于
35、overlap约束只能用通用约束机制来实现对于方法一来讲,covering约束也只能用通用约束机制来实现火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去类层次的翻译类层次的翻译-两种方法的比较两种方法的比较p方法一:当查询涉及到Employees的属性和其它一些细节属性时需要连接操作;当查询仅涉及到Employees的属性时则在Employees关系上进行即可;另一个优点是可以存储非Hourly_Emps和Contract_Emps的实体p方法二:主要确定无法存储非Hourly_Emps和Contract_Emps的实体,且name和
36、lot出现了两次;优点是仅涉及到Hourly_Emps或Contract_Emps的查询仅在一个关系上进行即可,不需要额外的连接操作,但涉及到所有雇员的查询则需要在两个关系上进行;火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去实例分析q一个公司数据库需要存储雇员、部门和雇员小孩的信息。雇员工作在部门(一个雇员只能工作在一个部门),每个部门由一个雇员管理,每个雇员小孩的名字是唯一的,假定小孩只有一个家长工作在这个公司,而且我们不关心哪些已经调离雇员的小孩情况。请画出ER图扑获这些信息。雇员(ssn,salary,phone)部门(dn
37、o,dname,budget)小孩(name,age)火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去实例分析部门雇员小孩工作有1m管理n11ndnodnamebudgetssnsalaryphonenameage 雇员(ssn,salary,phone,dno)部门(dno,dname,budget,ssn not null)小孩(ssn,name,age)火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去实例分析r一个大学数据库包括教授、课程信息。教授讲授课程,下面几种情况
38、都是描述有关讲授联系集的,对于每一种情况画ER图描述教授可以在几个学期讲授同一门课程,但仅最近一次的讲授活动需被记录下来教授可以在几个学期讲授同一门课程,每次讲授活动需被记录下来每个教授必须讲授课程每个教授只讲授一门课程火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去实例分析每个教授只讲授一门课程,每门课程可有几位教授讲授假定一些课程可由一组教授联合讲授假定一些特定课程只能由一组教授联合讲授,且这些教授中的任一位不可能独立讲授这门课程(思考题)火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿
39、被褥勇敢地冲出去实例分析教授课程讲授nm职工号姓名电话课号课时学分班级学期人数(1)火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去实例分析教授课程讲授nm职工号姓名电话课号课时学分班级学期人数教授课程讲授nm职工号姓名电话课号课时学分班级学期人数?讲授情况p(2)火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去实例分析教授课程讲授nm职工号姓名电话课号课时学分班级学期人数讲授情况n(3)火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去实例分析教授课程讲授m1职工号姓名电话课号课时学分班级学期人数讲授情况n(4,5)火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去实例分析教授课程讲授m1职工号姓名电话课号课时学分班级讲授号人数讲授情况n学期(6)火灾袭来时要迅速疏散逃生,不可蜂拥而出或留恋财物,要当机立断,披上浸湿的衣服或裹上湿毛毯、湿被褥勇敢地冲出去实例分析教授课程m1职工号姓名电话课号课时学分n(7)组构成nmISA一般课程特定课程讲授2讲授11参考答案