主要参考书课件.ppt

上传人(卖家):晟晟文业 文档编号:4706019 上传时间:2023-01-03 格式:PPT 页数:95 大小:368.69KB
下载 相关 举报
主要参考书课件.ppt_第1页
第1页 / 共95页
主要参考书课件.ppt_第2页
第2页 / 共95页
主要参考书课件.ppt_第3页
第3页 / 共95页
主要参考书课件.ppt_第4页
第4页 / 共95页
主要参考书课件.ppt_第5页
第5页 / 共95页
点击查看更多>>
资源描述

1、库原据数理目 录上一页下一页退 出主要参考书主要参考书数据库系统概念数据库系统概念 Abraham Silberschatz,Henry F.Korth,S.Sudarshan,杨冬青,唐世渭等译,杨冬青,唐世渭等译,机械工业出版社机械工业出版社对象对象-关系数据库管理系统关系数据库管理系统下一个大浪潮下一个大浪潮 Michael Stonebraker,Dorothy Moore 杨冬青,唐世渭,裴芳等译,北京大学出版社杨冬青,唐世渭,裴芳等译,北京大学出版社数据库系统实现数据库系统实现 Hector Garcia-Molina,Jeffery D.Ullman,Jennifer Widom

2、,杨冬青,唐世渭,徐其钧等译,机械工业出版社杨冬青,唐世渭,徐其钧等译,机械工业出版社数据挖掘数据挖掘-概念与技术概念与技术 Jiawei Han,Micheline Kamber 范明范明,孟小峰等译孟小峰等译,机械工业出版社机械工业出版社主要参考书数据库系统概念 目 录上一页下一页退 出第二章 数据模型第三章 数据库系统结构 第四章关系数据库方法第五章 标准语言SQL第六章关系规范化理论第七章 数据库设计第八章 安全性与完整性第九章 恢复与并发控制技术第十章 分布式数据库系统 第十一章 数据库技术的新发展第一章 数据库系统概论目 录 实 验第二章 数据模型第三章 数据库系统结构 第四章关系

3、数据库方法第章 关系数据库的标准语言特别提示:特别提示:本章为重点章,应熟悉和掌握本章为重点章,应熟悉和掌握SQL的数据定义、数据查询、数据更新的的数据定义、数据查询、数据更新的句法及其应用,特别是数据查询的应用。句法及其应用,特别是数据查询的应用。第章 关系数据库的标准语言特别提示:本章为目 录上一页下一页退 出1 1、SQLSQL发展历程发展历程(识记识记)SQLSQL从从19701970年美国年美国IBMIBM研究中心的研究中心的E.F.E.F.CoddCodd发表论文到发表论文到19741974年年BoyceBoyce和和ChamberlinChamberlin把把SQUARESQUA

4、RE语言改为语言改为SEQUELSEQUEL语言,到现在还在语言,到现在还在不断完善和发展之中。不断完善和发展之中。SQL(SQL(结构式查询语言结构式查询语言)虽然名为查询,但实虽然名为查询,但实际上具有际上具有定义、查询、更新和控制定义、查询、更新和控制等多种等多种功能。功能。51 SQL概述概述。1、S Q L 发展历程(识记)5 1 S Q L 概述。目 录上一页下一页退 出 SQL数据库的体系结构也是三级结构,数据库的体系结构也是三级结构,但术语与传统关系模型术语不同,在但术语与传统关系模型术语不同,在SQL中,中,关系模式称为关系模式称为基本表基本表,存储模式称为,存储模式称为存储

5、存储文件文件,子模式称为,子模式称为视图视图,元组称,元组称行行,属,属性称性称列列。三级体系结构:三级体系结构:关系模式关系模式基本表基本表 存储模式存储模式存储文件存储文件 子模式子模式视图视图 元组元组行行 属性属性列列 2、SQL数据库的体系结构数据库的体系结构(领会领会)S Q L 数据库的体系结构也是三级结构,但术语与传统关系模目 录上一页下一页退 出 SQL数据库体系的结构要点如下:数据库体系的结构要点如下:(1)一个一个SQL数据库是表的汇集。数据库是表的汇集。(2)一个一个SQL表由行集构成,行是列的序列,每列对应表由行集构成,行是列的序列,每列对应一个数据项。一个数据项。(

6、3)表是基本表或是视图。基本表是实际存储在数据库表是基本表或是视图。基本表是实际存储在数据库中的表,视图由是由若干基本表或视图构成的表的定义。中的表,视图由是由若干基本表或视图构成的表的定义。(4)一个基本表可以跨一个或多个存储文件,一个存储一个基本表可以跨一个或多个存储文件,一个存储文件也可存放一个或多个基本表。存储文件与物理文件文件也可存放一个或多个基本表。存储文件与物理文件对应。对应。(5)用户可以用用户可以用SQL语句对视图和基本表操作,语句对视图和基本表操作,(6)SQL的用户可以是应用程序,的用户可以是应用程序,ak或终端用户或终端用户。S Q L 数据库体系的结构要点如下:目 录

7、上一页下一页退 出SQL由四部分组成:(P99)(1)数据定义数据定义:SQL DDL。定义SQL模式,基本表、视图和索引。(2)数据操纵数据操纵:SQL DML。包括数据查询和数据更新(增、删、改)。(3)数据控制数据控制:包括对基本表和视图的授权、完整性规则的描述,事务控制等。(4)数据查询数据查询。3、SQL的组成的组成(识记识记)S Q L 由四部分组成:(P 9 9)3、S Q L 的组成(识记)目 录上一页下一页退 出5.2.1 基本表的定义基本表的定义1数据类型数据类型数值型数值型:包括包括长整数长整数 integerinteger、短整数短整数smallintsmallint、

8、单精度浮点数单精度浮点数real real 或或floatfloat、双精双精度浮点数度浮点数double precision double precision、定点十进制数定点十进制数说明为说明为DECIMAL(n,d)DECIMAL(n,d)字符串型字符串型:定长定长char(n)char(n)、变长串变长串varcharvarchar(n)(n)位串型位串型:定长:定长bit(n),变长变长bit varying(n),同同上。上。时间型时间型:date、time。时标时标:timestamp5.2 关系模式的定义关系模式的定义5.2.1 基本表的定义5.2 关系模式的定义目 录上一页下

9、一页退 出基本表的创建:基本表的创建:(可理解为建立表结构可理解为建立表结构)CREAT TABLE 模式名模式名.基本表名基本表名(属性名,类型属性名,类型)NOT NULL UNIQUE(属性名,类型属性名,类型)NOT NULLUNIQUE其他参数其他参数 完整性约束完整性约束.)2.基本表的定义基本表的定义基本表的创建:(可理解为建立表结构)2.基本表的定义目 录上一页下一页退 出创建基本表,应指出放在哪个创建基本表,应指出放在哪个SQLSQL模式中,模式中,简单起见,简单起见,SQLSQL模式名均省略。每列的类模式名均省略。每列的类型可以是基本数据类型,也可以是用户型可以是基本数据类

10、型,也可以是用户预先定义的域名。完整性约束主要有三预先定义的域名。完整性约束主要有三种字句:种字句:主键子句主键子句,检查子句检查子句和和外键子外键子句句。基本表的创建定义中包含了若干列。基本表的创建定义中包含了若干列的定义和若干个完整性约束。的定义和若干个完整性约束。完整性约束包括主键子句完整性约束包括主键子句(PRIMARY KEY)PRIMARY KEY)、检查子句检查子句(CHECK)CHECK)和外键子句和外键子句(Foreign Foreign KEY)KEY)创建基本表,应指出放在哪个S Q L 模式中,简单起见,S Q L 模式目 录上一页下一页退 出例题:创建学生选课数据库中

11、基本表。CREATE TABLES S (Sno CHAR(4)NOT NULL,SNAME CHAR(8)NOT NULL,SAGE SMALLINT,SEX CHAR(1),PRIMARY KEY(Sno)例题:创建学生选课数据库中基本表。目 录上一页下一页退 出CREATE TABLE C (CNO CHAR(4),CNAME CHAR(10)NOT NULL,TEACHER CHAR(8),PRIMARY KEY(CNO)C R E A T E T A B L E C目 录上一页下一页退 出CREATE TABLE SC (SNO CHAR(4),CNO CHAR(4),GRADE S

12、MALLINT,PRIMARY KEY(SNO,CNO),FOREIGN KEY(SNO)REFERENCE S(SNO),FOREIGN KEY(CNO)REFERENCE C(CNO),CHECK (GRADE IS NULL)OR(GRADE BETWEEN 0 AND 100)C R E A T E T A B L E S C目 录上一页下一页退 出3.关于默认值例如:将SAGE的默认值定义为1,SEX的默认值定义为?CREATE TABLES S (Sno CHAR(4)NOT NULL,SNAME CHAR(8)NOT NULL,SEX CHAR(1)DEFAULT?SAGE SM

13、ALLINT DEFAULT 1 PRIMARY KEY(Sno)3.关于默认值目 录上一页下一页退 出定义域:CREATE DOMAIN 域名AS 数据类型用定义的域说明一个属性类型的格式是:属性名1,属性名2,;例:为表S的HOSTADDR和COMMANDDR 定义一个域ADDRDOMAIN:CREATE DOMAIN ADDRDOMAIN AS VARCHAR(36)DEFAULT unknow;HOSTADDR,COMMANDDR ADDRDOMAIN;删除域的命令格式:DROP DOMAIN 4.域域定义域:4.域目 录上一页下一页退 出1)增加新的列用“ALTERADD”语句 AL

14、TER TABLE ADD 例例:在在S中增加一个地址中增加一个地址(ADDRESS)列列:ALTER TABLE S ADD ADDRESS VARCHAR(30)注意:新增加的列不能定义为“NOT NULL”。基本表在增加一列后,原有的元组在新增加的列上的值都被定义为空值(NULL)。5.2.2 基本表结构的修改基本表结构的修改1)增加新的列用“A L T E R A D D ”语句5.2.2 目 录上一页下一页退 出ALTER TABLE 基本表名 DROP 列名 CASCADERESTRICTCASCADE表示:在基本表中删除某列时,所有引用到该列的视图和约束也要一起自动地被删除。RE

15、STRICT表示:在没有视图或约束引用该属性时,才能在基本表中删除该列,否则拒绝删除操作。例:在S中删除年龄(SAGE)列,并把引用该列的所有视图和约束一起删除:ALTER TABLE S DROP SAGE CASCADE2)删除原有的列用“ALTERDROP”语句A L T E R T A B L E 基本表名 D R O P 列名 C A S C目 录上一页下一页退 出 3)基本表的撤消DROP TABLE 基本表名 CASCADE|RESTRICT 3)基本表的撤消目 录上一页下一页退 出创建格式:创建格式:CREAT UNIQUE INDEX 索引名索引名 ON 基本表名基本表名(属

16、性名属性名 ASC|DESC,属性名属性名 ASC|DESC)索引排序可以升序、也可降序。升序索引排序可以升序、也可降序。升序用用ASCASC,降序用降序用DESCDESC。5.2.5 索引的创建和撤消索引的创建和撤消创建格式:5.2.5 索引的创建和撤消目 录上一页下一页退 出CREATE INDEX CREATE INDEX SNO_INDEXSNO_INDEX ON S(SNO)ON S(SNO)CREATE UNIQUE INDEX SNO_INDEXCREATE UNIQUE INDEX SNO_INDEX ON S(SNO)ON S(SNO)CREATE INDEX SC_INDE

17、X CREATE INDEX SC_INDEX ON SC(SNO ASC ON SC(SNO ASC,CNO DESC)CNO DESC)在在INDEXINDEX前加上前加上UNIQUE,SNOUNIQUE,SNO的值不重复,的值不重复,撤消:撤消:DROP INDEX 索引名索引名例:例:S S创建索引创建索引C R E A T E I N D E X S N O _ I N D E X O N S(S N目 录上一页下一页退 出总结:总结:凡创建都用凡创建都用CREATE,CREATE,删除都用删除都用DROP,DROP,改变用改变用alter,alter,再跟类型和名字,附再跟类型和名

18、字,附加子句很容易了。加子句很容易了。总结:目 录上一页下一页退 出主要参考书课件目 录上一页下一页退 出主要参考书课件目 录上一页下一页退 出主要参考书课件目 录上一页下一页退 出主要参考书课件第章第章 数据依赖和关系规范化理论数据依赖和关系规范化理论第章 数据依赖和关系规范化理论目 录上一页下一页退 出本章的理论性较强,学习时有无从下本章的理论性较强,学习时有无从下手的感觉,在学习时应多加思考,从概念手的感觉,在学习时应多加思考,从概念出发去理解理论,前后的理论有较强的联出发去理解理论,前后的理论有较强的联系,因此要逐个理解。系,因此要逐个理解。本章重点:本章重点:函数依赖,无损联接函数依

19、赖,无损联接保持依赖、范式保持依赖、范式第章第章 数据依赖和关系规范化理论数据依赖和关系规范化理论本章的理论性较强,学习时有无从下手的感觉,在学习时应多加思考目 录上一页下一页退 出 关系数据库关系数据库是以是以关系模型关系模型为基础的数据为基础的数据库,它利用关系来描述现实世界。一个关系库,它利用关系来描述现实世界。一个关系既可以用来描述一个既可以用来描述一个实体实体及其及其属性属性,也可以,也可以用来描述实体间的联系。关系实质上就是一用来描述实体间的联系。关系实质上就是一张张二维表二维表,表的,表的行行称为称为元组元组,列列称为称为属性属性。关系模式是用来定义关系的,这里的关关系模式是用来

20、定义关系的,这里的关系模式我们可以简单地理解为一个表的结构,系模式我们可以简单地理解为一个表的结构,一个关系数据库包含一组关系,也就是包含一个关系数据库包含一组关系,也就是包含一组二维表,这些二维表结构体的集合就构一组二维表,这些二维表结构体的集合就构成数据库的模式成数据库的模式(可以理解为数据库的结构可以理解为数据库的结构)。6.1关系模式的设计问题关系模式的设计问题(识记识记)关系数据库是以关系模型为基础的数据库,它利用关系来描述现实目 录上一页下一页退 出泛关系模式泛关系模式:把现实问题的所有属性组成一个把现实问题的所有属性组成一个关系模式关系模式R(U)R(U),这个关系模式就称为泛关

21、系模这个关系模式就称为泛关系模式。式。数据库模式数据库模式:把把泛泛关系模式关系模式用一组关系模式的用一组关系模式的集合集合来表示时,这个来表示时,这个就是数据库模式。就是数据库模式。关系模式的相关内容从关系模式的相关内容从 大大 到到 小小 的排列的排列泛关系模式泛关系模式数据库模式数据库模式关系数据库关系数据库表结表结构构关系模式实例关系模式实例(表表)记录记录(行、列行、列.).)要 点泛关系模式:把现实问题的所有属性组成一个关系模式R(U),这目 录上一页下一页退 出要 点例:有一学生情况数据库studb,属性:sno(学号)、SNAME(姓名)、SDEPARTMENT(所在系)、SA

22、GE(年龄)、CNO(课程号)、CNAME(课程名)、GRADE(成绩)、PCNO(先修课编号)要 点例:有一学生情况数据库s t u d b,属性:s n o(目 录上一页下一页退 出关系模式一:关系模式一:S_C_GRADE(SNO,SNAME,SDEPARTMENT,SAGE,CNO,CNAME,GRADE,PCNO)泛关系模式泛关系模式数据冗余、更新异常、插入异常和删除异常 关系模式一:S _ C _ G R A D E(S N O,S N A ME,S D目 录上一页下一页退 出关系模式集:关系模式集:S(SNO,SNAME,SD,SAGE)S(SNO,SNAME,SD,SAGE)C

23、(CNO,CNAME,PCNO)C(CNO,CNAME,PCNO)S_C(SNO,CNO,GRADE)数据库模式数据库模式SNOSNOSNAMESNAME SDSDSAGESAGE0001 张华CS 170002 李明MA 19CNOCNOCNAMECNAMEPCNOPCNOC101 离散数学c110C102 数据结构c101C103 操作系统c102C105 数据库1c103SNOSNOCNOCNOGRADE0001C101 50001C102 50001C105 50002C103 30002C105 3关系模式集:数据库模式S N O S N A ME S D S A G E 0 0 0

24、 1 张目 录上一页下一页退 出值得关注什么原因引起异常现象和大量数据冗余?现实世界的事物联系泛泛关系模式关系模式 数据库模式数据库模式规范化通过研究各事物的属性之间的联系(函数依赖、多值依赖、连接依赖),形成设计规范化关系数据库设计理论。值得关注现实世界的事物联系泛关系模式 数据库模目 录上一页下一页退 出6.2 函数依赖函数依赖(FD)1、定义定义6-1:函数依赖的定义函数依赖的定义(领会):设有关系模式设有关系模式R(A1R(A1,A2A2,.An).An)或简记或简记为为R(U)R(U),X X,Y Y是是U U的子集,的子集,r r是是R R的任一具的任一具体关系,如果对体关系,如果

25、对r r的任意两个元组的任意两个元组t1,t2,t1,t2,由由t1X=t2Xt1X=t2X导致导致t1Y=t2Yt1Y=t2Y,则称则称X X函数决定函数决定Y Y,或或Y Y函数依赖于函数依赖于X X,记为记为XYXY。XYXY为模式为模式R R的一个函数依赖。的一个函数依赖。6.2 函数依赖(F D)1、定义6-1:函数依赖的定义(上一页下一页退 出要 点目 录如:“班级”函数依赖于“编号”。特别注意在这张表中,任何一行的关系均应符合上述条件,如果有一行不符合函数依赖的条件,则函数依赖对于这个关系就不成立。函数依赖是否成立是不可证明的,它由信息本身的语义特征决定。一旦确定,则要强制接受。

26、上一页下一页退 出要 点目 录如:“班级”函目 录上一页下一页退 出指出下列关系模式的函数依赖关系。指出下列关系模式的函数依赖关系。S(SNO,SNAME,SDEPARTMENT,SAG)S(SNO,SNAME,SDEPARTMENT,SAG)C(CNO,CNAME,GRADE,PCNO)C(CNO,CNAME,GRADE,PCNO)S_C(SNO,CNO,GRADE)指出下列关系模式的函数依赖关系。目 录上一页下一页退 出2.2.几种类型的函数依赖几种类型的函数依赖定义定义6-26-2:一个函数依赖:一个函数依赖X XY Y如果满足如果满足Y XY X,则称此函数依赖为则称此函数依赖为非平凡

27、函数依赖非平凡函数依赖(Non-Non-Trivial Dependency)Trivial Dependency),否则称之为否则称之为平凡平凡函数依赖函数依赖(Trivial Dependency)Trivial Dependency)。例如例如:X X,X XX X,XZXZX X等都是平凡函数依赖。等都是平凡函数依赖。2.几种类型的函数依赖上一页下一页退 出要 点目 录定义63:设R、X、Y的含义同定义61,若Y函数依赖于X,但不依赖于X的任何子集,(XY)X(X X (XY),则称Y完全函数依赖(Fully Depndency)于X,记为XY。例如,在关系S中,有SNOSDEPART

28、MENT(SNO、SNAME)SDEPARTMENT(SNO、SAGE)SDEPARTMENT真正起作用的函数依赖是SNOSDEPARTMENT,其他都是派生的。因此SN0SDEPARTMENT,是完全函数依赖。上一页下一页退 出要 点目 录定义6 3:设目 录上一页下一页退 出定义64:若Y函数依赖于X,但并非完全函数依赖于X,即满足:(XY)X(X X XY)则 称 Y 部 分 函 数 依 赖(P a r t i a 1 1 y Dependency)于X,记为XY。例如:(SNO、SNAME)SDEPARTMENT (SNO、SAGE)SDEPARTMENT定义6 4:若Y 函数依赖于X

29、,但并非完全函数依赖于X,即满足目 录上一页下一页退 出直接函数依赖:前面提到的函数依赖都是直接的间接函数依赖:在关系S中增加系的电话号码DT(假设每个系有惟一的一个号码),从而有SNAMESDEPARTMENT,SDEPARTMENTDT,于是SNAMEDT。DT并不直接依赖于SNAME,是通过中间属性SDEPARTMENT间接依赖于SNAME 直接函数依赖:前面提到的函数依赖都是直接的目 录上一页下一页退 出定义65:在关系模式R(U)中,设X,ZU,且满足:Y(YU(XYXY (Y(Y X)X)(YX)YZ)则称Z传递依赖于X,否则,称为非传递函数依赖。(间接)XY and YZ 而且

30、Y不属于X,Y X不成立。非平凡函数依赖SNAMESDEPARTMENT,SDEPARTMENTDT,定义6 5:在关系模式R(U)中,设X,Z U,且满足:非平目 录上一页下一页退 出6.2.2 关系的关键字和超关键字关系的一个关键字关系的一个关键字K K可以由一个或几个属性组成可以由一个或几个属性组成定义66:在关系模式R(U)中,若K U,且满足K U,则称为R的关键字。一个关系可能有若干个关键字,通称为候选关键字(CandldateKey)。但通常指定其中一个作为经常使用的,称为主关键字(PrimaryKey)。关键字是完全函数决定关系的属性全集。6.2.2 关系的关键字和超关键字关系

31、的一个关键字K 可以由上一页下一页退 出要 点目 录 一个包含了关键字的属性集合也能一个包含了关键字的属性集合也能够函数决定够函数决定(但不是完全函数决定,而是但不是完全函数决定,而是部分决定部分决定)属性全集,我们把这种包含了属性全集,我们把这种包含了关键字的属性集合称为关键字的属性集合称为超关键字超关键字(Super Super Key)Key)。例如:SNO (SNO,SNAME,SDEPARTMENT)CNO (CNO,CNAME,PCNO)(SNO,CNO)G 所以,SNO,CNO和(SNO,CNO)分别是关系模式S、C和S_C的关键字。(SNO、SNAME)(SNO,SNAME,S

32、DEPARTMENT)(SNO、SDEPARTMENT)(SNO,SNAME,SD)所以,(SNO,SNAME)和(SNO,SDEPARTMENT)。都不是关键字,而是超关键字上一页下一页退 出要 点目 录 一个包上一页下一页退 出要 点目 录如果在一个关系的所有属性中没有任何属性子集可以作为关键字的话,可以以属性全集作为关键字,这种关键字叫做全关键字(AllKey)。主属性集:在一个关系模式中,所有关键字中的属性构成一个集合。非主属性集:其余不包含在关键字中的属性构成另一个集合。相应地,把主属性集中的属性称为主属性;非主属性集中的属性称为非主属性 上一页下一页退 出要 点目 录如果在一个关系

33、上一页下一页退 出要 点目 录如何确定一个关系模式的关键字?如何确定一个关系模式的关键字?如果关系模式由ER模型转换得到,则可以按照下面的规则推得关键字:(1)如果关系R是由某个实体集转换而来的,则关系的关键字就是实体集的主属性。(2)如果关系R表示两个实体集之间的多对多联系,则R的关键字由这两个实体集的主属性组合而成。如关系S_C的关键字由学生实体集的主属性SNO和课程的主属性CNO组合而成。(3)如果关系R表示从实体集E1到实体集E2的多对一联系,则R的主属性就是实体集E1的主属性,但不包括E2的那些主属性。例如:OWNS(TITLE,YEAR,STUDIONAME)其中TITLE和YEA

34、R是电影拷贝的主属性,STUDIONAME是电影厂的主属性,则OWNS的主属性仅包括TITlE和YEAR。(4)如果关系R表示两个实体集之间的一对一联系,则其中任何一个实体集的主属性都可以作为R的主属性。(5)如果关系R表示一个实体集合E与两个或两个以上的实体集之间的联系,则至少有一个R的关键字包含E的主属性。上一页下一页退 出要 点目 录如何确定一个关上一页下一页退 出要 点目 录6.3 函数依赖理论6.3.1 函数依赖的逻辑蕴涵(识记)一个关系模式可能存在很多个函数依赖(包括平凡函数依赖),它们构成了该关系模式的函数依赖集合,记为F。例6-1 设有关系模式R(A,B,C),同时已知R上的一

35、个函数依赖集FAB,BC,则必存在AC。上一页下一页退 出要 点目 录6.3 函数上一页下一页退 出要 点目 录 例例6-1 6-1 设有关系模式设有关系模式R(AR(A,B B,C)C),同时已同时已知知R R上的一个函数依赖集上的一个函数依赖集F FAAB B,B BCC,则则必存在必存在A AC C。证明:用反证法证明。证明:用反证法证明。设设r r是关系模式是关系模式R R的任一具体关系,且满足的任一具体关系,且满足A AB B和和B BC C,但不满足但不满足A AC C。又设又设u u和和v v是是r r上的上的任 意 两 个 元 组,且任 意 两 个 元 组,且 u A u A

36、v A v A ,但但uCuCvC(vC(否则与假设的否则与假设的R R不满足不满足A AC C相矛盾相矛盾)。那么,那么,uBuB是否等于是否等于vB?vB?如果不相等,违反已如果不相等,违反已知条件知条件A AB B;如果相等,则由已知的如果相等,则由已知的A AB B:uAuAvA vA 则则uBuBvB;vB;再根据已知的再根据已知的B BC C:uBuBvB,vB,则则uCuCVCVC。所以,所以,uA=vA,uA=vA,则则uCuCvCvC,即即A AC C,这与假设相矛盾。可见,这与假设相矛盾。可见,r r必定满足必定满足A AC C。因因r r是模式是模式R R的任意具体关系,

37、的任意具体关系,所以,由所以,由F F:AAB B,B BCC必能推出必能推出A AC C,证毕。证毕。上一页下一页退 出要 点目 录 例6-1 上一页下一页退 出要 点目 录从己知的函数依赖F推出另一个函数依赖集F,反之亦然,两个函数依赖集之间的这种互为因果关系称为逻辑蕴涵(1ogradeica1 Implication),即一个函数依赖集逻辑地蕴涵另一个函数依赖集。例如,上面的函数依赖集F:AB,BC和AB,BC,AC相互逻辑蕴涵。例如前面的例子,假如,如果每一门课程只有一个教师与其对应,一个教师可以上多门课,课程教师成立,根据我们对事实的掌握,可知 编号课程 也是成立的。设F=课程教师,

38、编号课程,则F逻辑蕴涵 编号教师。上一页下一页退 出要 点目 录从己知的函数依上一页下一页退 出要 点目 录定义定义6767:设:设F F是由关系模式是由关系模式R(U)R(U)满足的一个函满足的一个函数依赖集,数依赖集,X,YX,Y是是R R的属性子集,如果从的属性子集,如果从F F中的函中的函数依赖能够推出数依赖能够推出XYXY,则称则称F F逻辑蕴涵逻辑蕴涵XYXY。定义定义6868:称所有被一个已知函数依赖集称所有被一个已知函数依赖集F F逻逻辑蕴涵的那些函数依赖的集合为辑蕴涵的那些函数依赖的集合为F F的闭包的闭包(C1osure)C1osure),记为记为F F十十。一般情况下总有

39、。一般情况下总有F F F F十十,若若F FF F十十,则称,则称F F是函数依赖的一个完备集。完是函数依赖的一个完备集。完备集可能有多个。一个完备的函数依赖集,表备集可能有多个。一个完备的函数依赖集,表示对一个关系模式的全面约束,模式规范时必示对一个关系模式的全面约束,模式规范时必须考虑函数依赖的完备集。须考虑函数依赖的完备集。上一页下一页退 出要 点目 录定义6 7:设目 录上一页下一页退 出如何由F出发寻找F十?函数依赖函数依赖(FD)FD)的推理规则的推理规则(简单应用)前面我们举的例子中是以实际经验来确定一个函数依赖的逻辑蕴涵,但是我们需要一个推理规则才能完全确定F或F+的所有函数

40、依赖。设有关系模式R(U),X,Y,Z,W均是U的子集,F是R上只涉及到U中属性的函数依赖集632 Armstrong公理系统 如何由F 出发寻找F 十?6 3 2 A r ms t r o n g目 录上一页下一页退 出自反律:如果Y X U,则XY在R上成立。增广律:如果XY为F所蕴涵,Z W,则XWYZ在R上成立。(XZ表示XZ)当,则XWY 当,则XWY 当XY,则XY传递律:如果XY和YZ在R上成立,则XZ在R上成立。1 1独立推理规则独立推理规则(三条推理规则是彼此独立的。)(三条推理规则是彼此独立的。)自反律:如果Y X U,则X Y 在R 上成立。1 独目 录上一页下一页退 出

41、合并律:如果XY和XZ成立,那么XYZ成立。伪传递律:如果XY和WYZ成立,那么WXZ成立。分解律:如果XY和Z Y成立,那么XZ成立。2其他推理规则其他推理规则合并律:如果X Y 和X Z 成立,那么X Y Z 成立。2 其他目 录上一页下一页退 出例例62 62 设有关系模式设有关系模式R(AR(A,B B,C C,D D,E)E)及其上及其上的函数依赖集的函数依赖集F FABABCDCD,A AB B,D DE.E.求证求证F F必蕴涵必蕴涵A AE E。证明:AB (已知)AAB (增广律)ABCD (已知)ACD (传递律)AC,AD (分解规则)DE (已知)AE (传递律)证毕。

42、例6 2 设有关系模式R(A,B,C,D,E)及其上的函数目 录上一页下一页退 出定理61:若Ai(i=l,2,n)是关系模式R的属性,则XA1,A2,An成立的充分必要条件是XAi均成立。定理6 1:若A i(i=l,2,n)是关系模式R 的属性,目 录上一页下一页退 出定义6-9:设有关系模式R(U),U=A1,A2,,An,X是U的子集,F是U上的函数依赖集,则称所有 用 阿 氏 公 理 从 F 推 出 的 函 数 依 赖XAi(i=1,2,,n)中Ai的集合为X的属性集闭包,记为X :X =Ai|Ai U,X =Ai|Ai U,且且XAiXAi可用阿氏公理从可用阿氏公理从F F推出推出

43、 6.3.3 6.3.3 属性集闭包属性集闭包定义6-9:6.3.3 属性集闭包目 录上一页下一页退 出 例例6-36-3设关系模式设关系模式R(AR(A、B B、C)C)的函数依赖集的函数依赖集为为F FABAB,BCBC,分别求分别求A A、B B、C C的闭包。的闭包。解:若X=A,AB,BC (已知)AC (传递律)AA (自反律)X =A,B,C (据定义)若X=BBB (自反律)BC (已知)X B,C(据定义)若X=C,CC (自反律)X =C(据定义)例6-3 设关系模式R(A、B、C)的函数依赖集为F A目 录上一页下一页退 出定理6-2 设F是关系模式R(U)上的函数依赖值

44、,X,Y是U的子集,则函数依赖XY是用阿氏公理从F推出的,充分必要条件是Y X ;反之,能用阿氏公理从F推出的所有XY的Y都在X 中。定理6-2 设F 是关系模式R(U)上的函数依赖值,X,Y 是U上一页下一页退 出要 点目 录算法算法6161:求属性集:求属性集X(X U)X(X U)关于关于U U上的函数依上的函数依赖集赖集F F的闭包的闭包X X 。输入:属性全集输入:属性全集U U,U U上的函数依赖集上的函数依赖集F F,以及属以及属性集性集X UX U。输出:输出:X X关于关于F F的闭包的闭包X X 。方法:根据下列步骤计算一系列属性集合方法:根据下列步骤计算一系列属性集合X

45、X(O),(O),X X(1),(1),(1)(1)令令X X(O)(O)X X,i i0 0;(2)(2)令令X X(i+1)(i+1)=X=X(i)(i)B B 其中,其中,B BA|(V)(W)(VWA|(V)(W)(VWF FV XV X(i)(i)A AW)W)即即B B是这样的集合:在是这样的集合:在F F中寻找满足条件中寻找满足条件V XV X(i)(i)的所有函数依赖的所有函数依赖VWVW,并记属性并记属性W W的并集为的并集为B B。上一页下一页退 出要 点目 录算法6 1:求目 录上一页下一页退 出(3)(3)判断判断X X(i+1)(i+1)=X=X(i)(i)吗吗?(4

46、)(4)若若X X(i+1)(i+1)X X(i)(i),则用则用i+1i+1取代取代i i,返回返回(2)(2)(5)(5)若若X X(i+1)(i+1)=X=X(i)(i),则则X X(i)(i)即为即为X X ,算法终止。算法终止。该算法中的该算法中的U U、X X和和F F都是有限集都是有限集;它们的任何子集也是有限集。它们的任何子集也是有限集。(3)判断X(i+1)=X(i)吗?上一页下一页退 出要 点目 录 例例64 64 设设F FABABC C,C CA A,BCBCDD,ACDB,DEG,BEC,CGBD,CEAGACDB,DEG,BEC,CGBD,CEAG,令令X=BDX=

47、BD,求求X X 。解:X XBD 在F中找所有满足条件V X BD的函数依赖VW,结果为DEG,则BEG,于是X X BBDEG。i=0 判断是否X X ,显然X X 。i=0上一页下一页退 出要 点目 录 例6 4 上一页下一页退 出要 点目 录 在F中找所有满足条件V X BDEG(i=1)的函数依赖VW,结果为BEC,于是B B=C,则X X B B=BCDEG。i=1 判断是否X X ,显然X X 。i=1 在F中找所有满足条件V X BCDEG(i=2)的函数依赖VW,结果为CA,BCD,CGBD,CEAG,则B BABDG,于是X X B BABCDEG。上一页下一页退 出要 点

48、目 录 在F 中找所上一页下一页退 出要 点目 录 判断是否X X ,这时虽然X X ,(i=3)但X 已经包含了全部属性,所以不必再继续计算下去。若继续计算,必有X X 。(i=4)最后,X =(BD)ABCDEG。在判断计算何时结束时,可用下面四种方法在判断计算何时结束时,可用下面四种方法(1)X X 。(2)X 包含了全部属性。(3)在F中再也找不到函数依赖的右部属性是 X 中未出现过的属性。(4)在F中再也找不到满足条件V X 的函数依 赖VW。上一页下一页退 出要 点目 录 判断是否目 录上一页下一页退 出Armstrong公理是正确的和完备性的。函数依赖推理规则的完备性函数依赖推理

49、规则的完备性(识记)函数依赖推理规则系统(自反律、增广律和传递律)是完备的。由推理规则的完备性可得到两个重要结论:属性集X+中的每个属性A,都有XA被F逻辑蕴涵,即X+是所有由F逻辑蕴含XA的属性A的集合。F+是所有利用Amstrong推理规则从F导出的函数依赖的集合 A r ms t r o n g 公理是正确的和完备性的。第7章数据库设计本章介绍数据库结构设计第7 章数据库设计本章介绍数据库结构设计目 录上一页下一页退 出7.1 7.1 数据库设计概述数据库设计概述7.1.1 数据库设计目标和设计方法1.数据库设计目标数据库设计是指对于一个给定的应用环境,根据一个单位的信息需求、处理需求和

50、数据库的支撑环境,利用数据模型和应用程序模拟现实世界中该单位的数据结构和处理活动的过程。它包括两个方面:静态特性设计和动态特性设计,静态特性设计又称数据模型设计或数据库结构设计;动态特性设计则是指数据库结构基础上的应用程序开发。在次序上,一般是结构设计在前,应用设计在后。7.1 数据库设计概述目 录上一页下一页退 出要 点数据库设计的主要目标有:数据库设计的主要目标有:(1)最大限度地满足用户的应用功能需求。主要是指用户可以将当前与可预知的将来应用所需要的数据及其联系,全部准确地存放在数据库中。(2)获得良好的数据库性能。即要求数据库设计保持良好的数据特性以及对数据的高效率存取和资源的合理使用

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(主要参考书课件.ppt)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|