版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一章 数据库系统概述一、名称解释数据:是指所有能输入到计算机并能被计算机程序处理的符号介质总称,是用于输入计算机进行处理,具有一定意义的数字、字母、符号和模拟量等的统称。信息:是经过加工处理并对人类社会实践和生产活动产生决策影响的数据。 DB:是长期存储在计算机内、有组织的、统一管理的相关数据的集合。DBMS:是位于用户与0S之间的一层数据管理软件,它为用户或应用程序提供访问DB的方法,包括数据库的建立、查询、更新及各种数据控制。DBS:是指在计算机系统中引入数据库后的系统,一般由硬件、数据库、操作系统、DBMS、数据库开发工具、数据库应用系统和人员构成。数据字典(DD):Data Dict
2、ionary,数据库系统中存放三级结构定义的数据库,是系统中各类数据描述的集合。外模式:又称子模式或用户模式,是用户能够看到和使用的局部数据逻辑结构和特征的描述。模式:又称概念模式或逻辑模式,是数据库中全部数据的逻辑结构和特征的描述。内模式:DB在物理存储方面的描述。概念模型:也称信息模型,是对现实世界的认识和抽象的描述,按用户的观点对数据和信息进行建模,不考虑在计算机的DBMS中如何具体实现(不涉及信息在计算机中如何表示)。是对客户事物及其联系的一种抽象描述。实体:客观存在、可以相互区别的事物称为实体。属性:实体有很多特性,每一个特性称为一个属性。实体标识符:能惟一标识实体的属性或属性集,称
3、为实体标识符。数据模型(逻辑数据模型):能表示实体类型及实体间联系的模型,是对现实世界的第二层抽象,它与DBMS有关,直接面向数据库的逻辑结构。物理模型:是描述数据在物理存储介质上的存储结构和存储方法,与具体的DBMS、操作系统及硬件有关。二、填空数据管理发展的三个阶段:人工管理阶段、文件管理阶段、数据库管理阶段。数据库中存储数据是集成的和共享的。数据库的保护功能:数据库恢复、数据库的并发控制、数据完整性控制、数据安全性控制。数据库系统中的人员主要有:数据库管理员DBA、系统分析员、数据库设计人员、应用程序员和终端用户。数据库中数据的独立性分为逻辑独立性和物理独立性。数据库的三级结构是指外模式
4、、模式、内模式。一个数据库只有一个内模式,只一个模式,可以有多个外模式。数据处理要经过现实世界、概念世界和数据世界三个阶段,两级抽象。概念模型最常用的表达方法是美籍华人陈平山于1976年提出的E-R图。数据库发展至今,常见的数据模型有:层次、网状、关系和面向对象。层次模型对于一对多联系表达非常自然直观,是其突出优点。数据字典通常包括数据项、数据结构、数据流、数据存储和处理过程五个方面。客观存在、可以相互区别的事物称为实体。在ER图中,属性用椭圆表示,实体用矩形表示,联系用菱形表示。数据库的保护功能通过数据库恢复、并发控制、完整性控制、安全性控制等四个子系统实现。数据库系统DBS一般由硬件、数据
5、库、操作系统、DBMS、数据库开发工具、数据库应用系统和人员构成。两个实体之间的联系有三种类型。在一个选课系统中,学生与课程之间属于多对多(M:N)联系。三、简答1.数据与信息的关系?数据是指所有能输入到计算机并能被计算机程序处理的符号介质总称,是用于输入计算机进行处理,具有一定意义的数字、字母、符号和模拟量等的统称。信息是经过加工处理并对人类社会实践和生产活动产生决策影响的数据。数据是信息的符号表示或称为载体;信息则是数据的内涵,是对数据语义的解释。2.人工管理阶段数据管理技术的特点?数据不保存,也无须长期保存。 没有专用的软件对数据进行管理。只有程序(program)的概念,没有文件(fi
6、le)的概念。数据的组织方式必须由程序员自行设计与安排。数据不能共享。数据和程序是一个整体,数据无独立性。 数据面向程序。即一组数据对应一个程序。3.文件系统阶段的数据管理技术的特点?数据以“文件”形式可长期保存在外部存储器的磁盘上。数据的逻辑结构与物理结构有了区别,但比较简单。 文件组织已多样化。有索引文件、链接文件和直接存取文件等。 数据不再属于某个特定的程序,可以重复使用,即数据面向应用。 对数据的操作以记录为单位。4. 文件系统阶段的数据管理有些什么缺陷?试举例说明。主要有3个缺陷:数据冗余;数据不一致性;数据联系弱。例如学校里教务处、财务处、保健处建立的文件中都有学生详细资料,如联系
7、电话,家庭住址等。这就是“数据”冗余;如果某个学生搬家,就要修改3个部门文件中的数据,否则会引起同一数据在3个部门中不一致;产生上述问题的原因是这3个部门的文件中数据没有联系。5.数据库阶段的数据管理有哪些特色?采用数据模型可以表示复杂的数据结构;有较高的数据共享性和独立性,数据具有完整性、一致性和安全性,有效减少了数据冗余;利用DBMS实现数据的定义、操作、统一管理和控制,为用户提供了方便的用户接口;提供了4个方面的数据控制功能:数据库的并发控制,数据库的恢复,数据的完整性和数据安全性;对数据的操作以数据项为单位,增加了系统的灵活性。6.DBMS的主要功能包括哪几个方面?数据库的定义功能:定
8、义语言DDL来定义数据库的三级结构、两级映象,定义数据的完整性约束、保密限制等约束。数据库的操纵功能:操纵语言DML实现对数据的基本操作,数据查询和数据更新。数据库的保护功能:数据库恢复、数据库的并发控制、数据完整性控制、数据安全性控制。数据库的维护功能:数据库的数据载入、转换、转储、数据库的改组以及性能监控工能。数据字典(DD):对数据库的操作都要通过DD才能实现,DD还存放数据库运行时的统计信息。7.数据库系统中数据库管理员DBA的主要职责是什么?决定数据库中的信息内容和结构决定数据库的存储结构和存取策略定义数据的安全性要求和完整性约束条件监控数据库的使用和运行数据库的改进、重组或重构8.
9、 简述数据库系统的两级映像和数据独立性之间的关系。(什么叫数据独立性,两级独立性的具体涵义。)答:为了能够在系统内部实现数据库的3个抽象层次的联系和转换,数据库管理系统在这三级模式之间提供了两层映像:外模式/模式映像。当模式改变时(如增加新的关系、新的属性等),只需管理员对该映像做相应修改,就可以使外模式保持不变,如果应用程序是依据外模式编写的,则应用程序可以不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。模式/内模式映像。此映像是唯一的,它定义了数据全局逻辑结构与存储结构之间的对应关系,当数据库的存储结构发生改变时,只需要管理员对该映像做相应修改,就可以使模式保持不变,从而应用
10、程序也不必修改,保证了数据与程序的物理独立性,简称数据的物理独立性。9.实体之间联系有哪几种?分别举例说明?1:1联系:如果实体集El中每个实体至多和实体集E2中的一个实体有联习,反之亦然,那么El和E2的联系称为“l:1联系”。例如:班级与班长之间的联系。1:N联系:如果实体集El中每个实体可以与实体集E2中任意个(零个或多个)实体有联系,而E2中每个实体至多和El中一个实体有联系,那么El和E2的联系是“1:N联系”。 例如:部门和职工两个实体集之间的联系。M:N联系:如果实体集El中每个实体可以与实体集E2中任意个(零个或多个)实体有联系,反之亦然,那么El和E2的联系称为“M:N联系”
11、。例如:学生与课程两个实体集之间的联系。综合题10.设某商业集团数据库中有三个实体集。一是“商店”实体集,属性有商店编号、商店名、地址等;二是“商品”实体集,属性有商品号、商品名、规格、单价等;三是“职工”实体集,属性有职工编号、姓名、性别、业绩等。商店与商品间存在“销售”联系,每个商店可销售多种商品,每种商品也可放在多个商店销售,每个商店销售每一种商品,有月销售量;商店与职工间存在着“聘用”联系,每个商店有许多职工,每个职工只能在一个商店工作,商店聘用职工有聘期和月薪。试画出ER图,并在图上注明属性、联系的类型。再转换成关系模式集,并指出每个关系模式的主键和外键。解:ER图如下图所示。M销售
12、聘用商店编号商店商店名地址聘期月薪职工编号业绩职工性别姓名月销售量N1N商品号商品名单价商品规格所转换成的关系:商品(商品号,商品名,规格,单价)商店(商店编号,商店名,地址)销售(商店编号,商品号,月销售量)职工(职工编号,姓名,性别,业绩,聘期,月薪,商店编号)11设某商业集团数据库中有三个实体集。一是“公司”实体集,属性有公司编号、公司名、地址等;二是“仓库”实体集,属性有仓库编号、仓库名、地址等;三是“职工”实体集,属性有职工编号、姓名、性别等。 公司与仓库间存在“隶属”联系,每个公司管辖若干仓库,每个仓库只能属于一个公司管辖; 仓库与职工间存在“聘用”联系,每个仓库可聘用多个职工,每
13、个职工只能在一个仓库工作,仓库聘用职工有聘期和工资。试画出E-R图,并在图上注明属性、联系的类型。再转换成关系模式集,并指出每个关系模式的主键和外键。解:ER图及属性、联系图如下:N1隶属聘用仓库编号仓库仓库名地址聘期工资N1公司编号公司名地址公司职工编号职工性别姓名将ER图转换成为关系模式集为:公司(公司编号,公司名,地址)仓库(仓库编号,仓库名,地址,公司编号)职工(职工编号,姓名,性别,仓库编号,聘期,工资)12设某商业集团数据库中有三个实体集。一是“商品”实体集,属性有商品号、商品名、规格、单价等;二是“商店”实体集,属性有商店号、商店名、地址等;三是“供应商”实体集,属性有供应商编号
14、、供应商名、地址等。 供应商与商品间存在“供应”联系,每个供应商可供应多种商品,每种商品可向多个供应商订购,供应商供应每种商品有月供应量;商店与商品间存在“销售”联系,每个商店可销售多种商品,每种商品可在多个商店销售,商店销售商品有月计划数。试画出E-R图,并在图上注明属性、联系的类型。再转换成关系模式集,并指出每个关系模式的主键和外键。解:ER图及属性、联系图为:MNM供应销售月计划数商品号单价商品商品名规格供应商名供应商编号供应商地址商店商店号地址商店名月供应量N这个ER图转换的关系模式如下:商品(商品号,商品名,规格,单价)供应商(供应商编号,供应商名,地址)商店(商店号,商店名,地址)
15、 供应(商品号,供应商编号,月供应量)销售(商品号,商店号,月计划数)13假设要为银行的储蓄业务设计一个数据库,其中涉及到储户、存款、取款等信息,试设计E-R模型。解:储蓄业务主要是存款、取款业务,设计的ER图如下所示。N1N存款取款取款日期储户存款方式存款单号存款单金额取款单取款单号金额取款方式存款日期1账号地址身份证号姓名存款余额14假设某超市公司要设计一个数据库系统来管理该公司的业务信息。该超市公司的业务管理规则如下: (1) 该超市公司有若干仓库,若干连锁商店,供应若干商品。(2) 每个商店有一个经理和若干收银员,每个收银员只在一个商店工作。(3) 每个商店销售多种商品,每种商品可在不
16、同的商店销售。(4) 每个商品编号只有一个商品名称,但不同的商品编号可以有相同的商品名称。每种商品可以有多种销售价格。(5) 超市公司的业务员负责商品的进货业务。试按上述规则设计E-R模型。解:仓库N进货发货M商品库存MPNN业务员M具有销售价格1NP1N收银员经理1商店拥有主管1销售MN15假设要根据某大学的系、学生、班级、学会等信息建立一个数据库。一个系有若干专业,每个专业每年只招一个班,每个班有若干学生;一个系的学生住在同一宿舍区;每个学生可以参加多个学会,每个学会有若干学生,学生参加某学会有入会年份。试为该大学的系、学生、班级、学会等信息设计一个E-R模型。解:下图所示的是一种设计方案
17、。专业N设置招收1住宿系宿舍区1N1有班级学生N1N参加学会NM第二章 关系数据库基本理论一、名称解释超键:在一个关系中,能惟一标识元组的属性或属性集称为关系的超键。 候选键:如果一个属性集能惟一标识元组,且又不含有多余的属性,那么这个属性集称为关系的候选键。 主键:若一个关系中有多个候选键,则选其中的一个为关系的主键。外键:若一个关系R中包含有另一个关系S的主键所对应的属性组F,则称F为R的外键。并称关系S为参照关系,关系R为依赖关系。 实体完整性规则:实体的主键值不允许是空值或重复的值。参照完整性规则:依赖关系中的外键值或者为空值,或者是相应参照关系中某个主键值。笛卡尔积:n元关系R和m元
18、关系S的笛卡尔积记为R×S,其结果是一个n+m列元组的集合,元组的前n列是关系R的一个元组,后m列是关系S的一个元组。若关系R和S分别有r和s个元组,则R×S有r*S个元组。连接:是从两个关系的笛卡尔积中选取属性间满足一定条件的元组。函数依赖:设有关系模式R(U),X和Y是属性集U的子集,若对于R(U)的任意一个可能的关系r,r中不可能存在两个元组在X上的属性值相等,而在Y上的属性值不等,则称X函数确定Y或Y函数依赖(Functional Dependency,简记为FD)于X,记作XY。非平凡的函数依赖:在关系模式R(U)中,对于U的子集X和Y,如果XY,但Y Í
19、; X,则称XY是非平凡的函数依赖。若XY,且Y Í X, 则称XY是平凡的函数依赖完全函数依赖(部分函数依赖):假设在关系模式R(U)中,X和Y是属性集U的子集,且有XY,如果对于X的任一个真子集W,都有WY不成立,则称Y完全函数依赖于X,否则,称Y部分函数依赖于X。传递函数依赖:假设在关系模式R(U)中,X 、Y和Z是属性集U的不同子集,如果XY(并且YX不成立),YZ,则称Z传递函数依赖X,或称X传递函数确定Z。1NF:如果关系模式R的每个关系r的属性值都是不可分的原子值,那么称R是1NF的模式。2NF:如果关系模式R属于1NF,且它的每一个非主属性都完全函数依赖于R的候选键,
20、则称R属于第二范式,简记为R2NF。3NF:如果关系模式R属于1NF,且每个非主属性都不传递依赖于R的候选键,那么称R属于第三范式,简记为R3NF。BCNF:若关系模式R3NF,并且每一个主属性都不部分依赖,也不传递依赖于R的每个不包含它的候选码,则RBCNF。 无损分解:当对关系模式R进行分解时,R的元组将分别在相应属性集进行投影而产生新的关系。如果对新的关系进行自然连接得到的元组集合与原关系完全一致,则称该分解为无损分解。保持函数依赖的分解:当对关系模式R进行分解时,R的函数依赖集也按相应的模式进行分解。如果分解后总的函数依赖集合与原来关系R的函数依赖集合对于Armstrong推理保持一致
21、,则称该分解为保持函数依赖分解(preserve dependency decompose)。二、填空一个关系就是一张规范的(二维)表格。关系模式是由一个关系名和它的所有属性构成,一般表示为关系名(属性1,属性2,属性n)。关系代数中传统的集合运算包括:并、交、差、笛卡尔积;专门的关系运算包括:选择、投影、连接和除。SQL是介于关系代数和关系演算之间的结构化查询语言。SQL具有丰富的查询功能、数据定义和数据控制功能,是集查询、DDL、DML、DCL于一体的关系数据语言。SQL是一种高度非过程化的语言。关系的完整性约束包括:域的完整性约束、实体完整性约束和参照完整性约束。关系模式设计的不好,容易
22、出现插入异常、删除异常、更新异常,数据冗余等四个问题,解决它的方法是分解。规范化理论用来改造关系模式,通过分解关系模式来消除其中不合适的数据依赖,以解决插入异常、删除异常、更新异常和数据冗余问题。规范化可以在任何一步停下来,并不是规范化程度(即范式)越高越好。Armstrong公理系统最基本的三个推理规则是:自反律、增广律、传递律。三、简答题1.关系的基本特点 关系(表)可以看成是由行和列交叉组成的二维表格。它表示的是一个实体集合。 表中一行称为一个元组,可用来表示实体集中的一个实体。 表中的列称为属性,给每一列起一个名称即属性名,表中的属性名不能相同,属性值是原子的,不可分解。 理论上没有列
23、序,列的取值范围称为域,同列具有相同的域,不同的列可有相同的域。 表中任意两行(元组)不能相同。能惟一标识表中不同行的属性或属性组称为主键。没有行序。2.什么叫外键?请举例说明。若一个关系R中包含有另一个关系S的主键所对应的属性组F,则称F为R的外键。例如,学生关系和系部关系分别为: 学生(SNO,SNAME,SEX,AGE,SDNO) 系部(SDNO,SDNAME,CHAIR)学生关系的主键是SNO,系部关系的主键为SDNO,在学生关系中,SDNO是它的外键。更确切地说,SDNO是系部表的主键,将它作为外键放在学生表中,实现两个表之间的联系。3.举例说明什么叫参照完整性。关系中的外键值或者为
24、空值,或者是相应参照关系中某个主键值。如下所示,在学生S与专业P两个关系之间存在着属性引用,关系S引用了关系P的主码PNO。S(SNO,SNAME,AGE,SEX,PNO)P (PNO, PNAME)S关系中PNO的取值要参照关系P中PNO的取值。如果关系S中的属性PNO取空值,说明该学生尚没分配专业。当对P中的记录进行删除或修改时,要注意保持S与P的一致性。4.请举例说明在同一个关系内部也可能存在参照的完整性约束。 学生(学号,姓名,性别,年龄,班长学号),班长学号是外键,它的取值必须参照学号。 课程(课程号,课程名,学分,先行课课程号)先行课课程号是外键,它的取值必须参照课程号。5. 设有
25、关系R和S,如下图所示,请计算RS,R-S,RS6.设有关系R和S,如下图所示,请计算RS,R-S,RS7.设有关系R和S,如下图所示。ABC327465247733ABC374253RS图2.17 关系R和S2<2计算RS,R-S,RS,R×S,3,2(S),B<'5'(R),R S,R S。答:ABC327436524477335RSABC324654773R-SABC723RSR.AR.BR.CS.AS.BS.C332277446655224477773333373737374242424253535353R×SCB53423,2(S)AB
26、C742433B<5(R)R.AR.BR.CS.AS.BS.C723345R S2<2ABC723R S8. 设有关系R和S,如下图所示,请计算一般连接(C<E),等值连接,自然连接。9.笛卡尔积、等值连接和自然连接三者之间有什么区别?笛卡儿积是一个基本操作,而等值连接和自然连接是组合操作。设关系R的元数为r,元组个数为m;关系S的元数为s。,元组个数为n。那么,R×S的元数为r+s,元组个数为m×n;ijR S的元数也是r+s,但元组个数小于等于m×n;R S的元数小于等于r+s,元组个数也小于等于m×n:10. 设有关系R和S,如下
27、图所示,请计算全外连接,左外连接,右外连接。11.什么叫除,设有关系R和S,如下图所示,请计算R÷S除法操作是用含有m个属性的关系R除以一个含有n个属性的关系S,运算结果是一个含有m-n个属性的新关系。记作:R÷S。关系R与关系S必须满足下列两个条件才能相除。关系R中的属性包含关系S中的全部属性。关系R中的某些属性不出现在S中。12. 设有关系R和S,如下图所示,请计算R÷S12. 设有关系R、S1、S2、S3,如下图所示,请计算R÷S1、R÷S2 、R÷S313. 设关系R(ABCDE)上函数依赖集为F,并且F=ABC,CDE,BD
28、,EA。求出R的候选键。解:已知ABC,由分解性得AB,AC;又已知BD,由传递性得 AD;又由合并性得 ACD,又已知CDE,再由传递性得 AE,因此,A是R的一个候选键。同理可得R的另外三个候选键E、CD和BC。 14设关系模式R(ABCD),F是R上成立的FD集,F=AB,CB,则相对于F,试写出关系模式R的候选键。并说明理由。解:R的关键码为ACD。因为从已知的F,AB,只能推出ACDABCD。15.简述Armstrong公理系统的推理规则A1-A7A1(自反性,Reflexivity):若YÍXÍU,则XY在R上成立。A2(增广性,Augmentation):若X
29、Y在R上成立,且ZÍU,则XZYZ在R上成立。A3(传递性,Transitivity):若XY和YZ在R上成立,则XZ在R上成立。A4(合并性,Union): XY,XZ XYZ。A5(分解性,Decomposition): XY,ZÍY XZ 。A6(伪传递性): XY,WYZ WXZ。A7(复合性,Composition): XY,WZ XWYZ。四、综合题1. 设教学管理数据库中有三个关系 S(SNO,SNAME,AGE,SEX,SDEPT) SC(SNO,CNO,GRADE) C(CNO,CNAME,CDEPT,TNAME)试用关系代数表达式表示下列查询语句:(1)
30、 检索LIU老师所授课程的课程号、课程名。(2) 检索年龄大于23岁的男学生的学号与姓名。(3) 检索学号为S3学生所学课程的课程名与任课教师名。(4) 检索至少选修LIU老师所授课程中一门课的女学生姓名。(5) 检索WANG同学不学的课程的课程号。(6) 检索至少选修两门课程的学生学号。(7) 检索学习全部课程的学生姓名。(8) 检索所学课程包含学生S3所学课程的学生学号。解: CNO,CNAME(TEACHER=LIU(C) SNO,SNAME(AGE>23SEX=M(SC) CNAME,TEACHER(SNO=S3(SC C) SNAME(SEX=FTEACHER=LIU(S SC
31、 C) CNO(C)-CNO(SNAME=WANG(S SC) 1(1=425(SC×SC)(7) SNAME(S (Sno,Cno (SC) ÷Cno (C)(8) Sno,Cno (SC) ÷ Cno(Sno=S3(SC) 2. 设教学数据库中有三个关系: 学生关系 S(S#,SNAME,AGE,SEX) 选课关系 SC(S#,C#,GRADE) 课程关系 C(C#,CNAME,TEACHER) 用关系代数表达式表示查询语句。(1) 检索学习课程号为C2的学生学号与成绩。 S#,GRADE(C#=C2 (SC)(2) 检索学习课程号为C2的学生的学号与姓名。
32、S#,SNAME(C#=C2 (S SC)(3) 检索选修课程名为MATHS的学生学号与姓名。 S#,SNAME(CNAME=MATHS (S SC C) (4) 检索选修课程号为C2或C4的学生学号。 S#(C#=C2 C#=C4(SC)(5) 检索至少选修课程号为C2和C4的学生学号。 1(1=42=C2 5=C4 (SC×SC)(6)检索不学C2课的学生姓名与年龄。 SNAME,AGE ( S)-SNAME,AGE (C#=C2 (S SC)3设关系模式R(ABCD),F是R上成立的FD集,F=ABCD,AD。 (1) 试说明R不是2NF模式的理由。(2) 试把R分解成2NF模
33、式集。答: 从已知的函数依赖集F,可知R的候选键是AB。另外,由ABCD可推出ABD,再由AD可知ABD是部分(局部)函数依赖,因此R不是2NF模式。 如果将R分解成AD,ABC,则是2NF模式集。4.设关系模式R(ABC),F是R上成立的FD集,F=CB,BA。 试说明R不是3NF模式的理由。 试把R分解成3NF模式集。答: 从已知函数依赖集F可知,R的候选键是C。由CB,BA可知,CA是一个传递依赖,因此R不是3NF模式。 此时如果将R分解成=CB,BA,则是3NF模式集。5设有关系模式R(职工编号,日期,日营业额,部门名,部门经理),该模式统计商店里每个职工的日营业额,以及职工所在的部门
34、和经理信息。如果规定:每个职工每天只有一个营业额;每个职工只在一个部门工作;每个部门只有一个经理。试回答下列问题: (1) 根据上述规定,写出模式R的基本FD和候选键。(2) 说明R不是2NF的理由,并把R分解成2NF模式集。(3) 进而分解成3NF模式集。解: 基本的FD有三个: (职工编号,日期) 日营业额 职工编号 部门名 部门名 部门经理 R的关键码为:(职工编号,日期)。 R中有两个这样的FD: (职工编号,日期)(部门名,部门经理) 职工编号 (部门名,部门经理)可见前一个FD是局部依赖,所以R不是2NF模式。R应分解Rl(职工编号,部门名,部门经理) R2(职工编号,日期,日营业
35、额)此处,Rl和R2都是2NF模式。 R2已是3NF模式。在R1中,存在两个FD:职工编号 部门名 部门名 部门经理因此,“职工编号 部门经理”是一个传递依赖,Rl不是3NF模式。R1应分解成R11(职工编号,部门名) R12(部门名,部门经理)这样,=R11,Rl2,R2是一个3NF模式集。6设有关系模式R(运动员编号,比赛项目,成绩,比赛类别,比赛主管),如果规定:每个运动员每参加一个比赛项目,只有一个成绩;每个比赛项目只属于一个比赛类别;每个比赛类别只有一个比赛主管。试回答下列问题: (1) 根据上述规定,写出模式R的基本FD和候选键。 (2) 说明R不是2NF的理由,并把R分解成2NF
36、模式集。 (3) 进而分解成3NF模式集。解: 基本的FD有3个: (运动员编号,比赛项目) 成绩 比赛项目 比赛类别 比赛类别 比赛主管R的关键码为(运动员编号,比赛项目)。 R有两个这样的FD: (运动员编号,比赛项目) (比赛类别,比赛主管) 比赛项目 (比赛类别,比赛主管)可见,前一个FD是部分(局部)函数依赖,所以R不是2NF模式。如果把R分解成R1(比赛项目,比赛类别,比赛主管) R2(运动员编号,比赛项目,成绩)这里,R1和R2都是2NF模式。 R2已是3NF模式。在R1中,存在两个FD:比赛项目 比赛类别 比赛类别 比赛主管因此,“比赛项目 比赛主管”是一个传递依赖,R1不是3
37、NF模式。R1应分解为R11(比赛项目,比赛类别) R12(比赛类别,比赛主管)这样,=R11,R12,R2是一个3NF模式集。7.设关系模式R(ABC),F是R上成立的FD集,F=BC,CA,那么分解=AB,AC相对于F,是否无损分解和保持FD?并说明理由。A B CABACa1 a2 b13a1 b22 a3A B CABACa1 a2 b13a1 b22 a3由FD答:已知F=BC,CA,而AB(F)=BA,AC(F)=CA,显然这个分解丢失了FD:BC。对于保持无损分解:无a行,所以是有损分解。 8.设关系模式R(ABCD),F是R上成立的FD集,F=AB,BC,AD,DC,=AB,A
38、C,BD是R的一个分解。 相对于F,是无损分解吗?为什么? 试求F在的每个模式上的投影。 保持F吗?为什么?答: 用测试过程可以知道,相对于F是损失分解。 AB(F)=AB,AC(F)=AC,BD(F)=。 显然,分解相对于F不保持FD分解,因为丢失了BC,AD,DC等三个FD。9.设关系模式R(ABCD),R上的FD集F=AC,DC,BDA,试说明=AB, ACD,BCD相对于F是损失分解的理由。答:根据已知的F集,不可能把初始表格修改为一个全a行的表格,因此相对于F是损失分解。10.函数依赖集F的闭包F+:被F逻辑蕴涵的函数依赖全体构成的集合,称为F的闭包,记为F+。11.最小依赖集:设F
39、是属性集U上的FD集,Fmin是F的最小依赖集,那么Fmin应满足下列四个条件:(Fmin)+=F+;每个FD的右边都是单属性;Fmin中没有冗余的FD;每个FD的左边没有冗余的属性。12.设F为属性集U上的一组函数依赖,X ÍU, XF+ = A|XA能由F 根据Armstrong公理导出,XF+称为属性集X关于函数依赖集F 的属性闭包。n 引理4.2 设F为属性集U上的一组函数依赖,X,Y Í U,XY能由F 根据Armstrong公理导出的充分必要条件是Y ÍXF+n 用途 将判定XY是否能由F根据Armstrong公理导出的问题转化为求出XF+ ,判定Y是
40、否为XF+的子集的问题。13.已知关系模式R<U,F>,其中U=A,B,C,D,E;F=ABC,BD,CE,ECB,ACB。求(AB)F+ 。解:设X(0)=AB;(1)计算X(1): 逐一的扫描F集合中各个函数依赖, 找左部为A,B或AB的函数依赖。得到两个: ABC,BD。于是X(1)=ABCD=ABCD。(2)因为X(0) X(1) ,所以再找出左部为ABCD子集的那些函数依赖,又得到ABC,BD, CE,ACB,于是X(2)=X(1)BCDE=ABCDE。(3)因为X(2)=U,算法终止。所以(AB)F+ =ABCDE。五、选择题1.给定关系R(A1,A2,A3,A4)上的
41、函数依赖集F=A1A2,A3A2,A2A3,A2A4,R的候选关键字为_。A. A1 B. A1A3 C. A1A3A4 D. A1A2A3首先我们按照上面的算法计算A1+ 。result=A1,由于A1A2,A1result,所以result=resultA2=A1A2由于A2A3,A2result,所以result=resultA3=A1A2A3由于A2A4,A2result,所以result=resultA3=A1A2A3A4由于A3A2,A3result,所以result=resultA2=A1A2A3A4通过计算我们看到,A1+ =result=A1A2A3A4,所以A1是R的超码,
42、理所当然是R的候选关键字。此题选A 。2.设关系模式R<U, F>,其中U=A, B, C, D, E,FABC,CD,BCE,EA,则分解=R1(ABCE),R2(CD)满足 () 。A具有无损连接性、保持函数依赖B不具有无损连接性、保持函数依赖C具有无损连接性、不保持函数依赖D不具有无损连接性、不保持函数依赖先做无损链接的判断。R1R2=C,计算C+。Result=C由于CD,Cresult,所以result=resultD=CD可见C是R2的超码,该分解是一个无损分解。再做保持依赖的判断。ABC,BCE, EA都在R1上成立(也就是说每一个函数依赖左右两边的属性都在R1中),
43、CD在R2上成立,因此给分解是保持依赖的。选A。3.给定关系模式R<U, F>,U=A, B, C, D, E,FBA,DA,AE,ACB,其候选关键字为 (1) ,则分解=R1(ABCE),R2(CD)满足 (2) 。(1) AABD BABE CACD DCD(2)A具有无损连接性、保持函数依赖B不具有无损连接性、保持函数依赖C具有无损连接性、不保持函数依赖D不具有无损连接性、不保持函数依赖对于第一问,分别计算ABCD四个选项的闭包,(ABD)+ = ABDE (ABE)+ = ABE (ACD)+ = ABCDE (CD)+ = ABCDE 选D。再看第二问。先做无损链接的判
44、断。R1R2=C,计算C+。result=C因此C既不是R1也不是R2的超码,该分解不具有无损分解性。再做保持依赖的判断。BA,AE,ACB在R1上成立,DA在R1和R2上都不成立,因此需做进一步判断。由于BA,AE,ACB都是被保持的(因为它们的元素都在R1中),因此我们要判断的是DA是不是也被保持。对于DA应用算法二:result=D对R1,resultR1=(空集,找不到空集的符号,就用这个表示吧),t=,result=D再对R2,resultR2=D,D+ =ADE ,t=D+ R2=D,result=D一个循环后result未发生变化,因此最后result=D,并未包含A,所以DA未
45、被保持,该分解不是保持依赖的。选D。第四章 SQL SERVER 2008 基础一、填空题SQL SERVER 2008中提供了5个系统数据库,其中master数据库是核心,一旦被破坏系统将无法启动,tempdb是临时数据库,model是模板数据库。要连接到服务器,SQL SERVER提供了windows和SQL Server两种身份认证方式。要想通过Internet远程连接,最好使用SQL Server身份认证。SSMS是SQL SERVER一个集成的可视化管理工具,其全称是 SQL SERVER Management Studio。T-SQL中,系统变量又称全局变量,通过名称前面使用两个“
46、”符号与局部变量进行区分。T-SQL中,用户自定义的变量(局部变量)创建时使用DECLARE进行声明,命名是必须以 “”符号开头。T-SQL中,对变量赋值必须使用SELECT或SET语句来设定。T-SQL中,向客户端返回一个用户自定义的信息,可使用PRINT语句。T-SQL中,“-”用于单行注释,“/*/”用于程序中多行注释。二、简答题1.SQL SERVER的管理(暂停、停止和启动),系统提供了几种方式?(1)使用SSMS,选中注册服务器,右击,在弹出的快捷菜单中进行管理。(2)使用配置管理器,在其服务列表中选中相应的服务,右击,在弹出的快捷菜单中进行管理。(3)使用windows控制面板中
47、的服务选项卡,在其服务列表中选中相应的服务,右击,在弹出的快捷菜单中进行管理。(4)使用windows的NET命令。如net start Mssqlserver。2.SQL语言的特点(1) 高度非过程化。SQL语言进行数据操作只要提出“做什么”,具体怎么做则由系统找出一种合适的方法自动完成。(2) 面向集合的操作方式。SQL语句采用集合操作方式,就是说可以使用一条语句从一个或者多个表中查询出一组结果数据。(3) 语法简单。SQL语言功能强大,但是语法极其简单。(4) 是关系型数据库的标准语言。无论用户使用哪个公司的产品,SQL的基本语法都是一样的。 3. SQL语言的命令一般分哪三类,每类中有
48、哪些基本语句?(1) 数据操纵语言DML。DML语句用于操纵数据库中的数据,包括4个基本语句:SELECT、INSERT、UPDATE、DELETE。(2) 数据定义语言DDL。DDL用来建立数据库中各种数据对象(包括表、视图、索引、存储过程、触发器等),包括3个基本语句。CREATE、ALTER、DROP。(3) 数据控制语言DCL。DCL用于授予或者收回访问数据库的某种权限和事务控制,包括4个基本语句。GRANT、 REVOKE、COMMIT、ROLLBACK。 4.简述T-SQL全局变量和局部变量的区别。T-SQL程序中的变量分为全局变量和局部变量两类,全局变量是由SQL Server系
49、统定义和使用的变量,也称为系统变量。它通过名称前面加两个“”符号区别于局部变量。DBA和用户可以使用全局变量的值,但不能自己定义全局变量。局部变量是用户自定义的变量,它的作用范围仅在程序内部。在程序中通常用来储存从表中查询到的数据,或当作程序执行过程中暂存变量使用。局部变量必须以符号“”开头,而且必须先用DECLARE语句说明后才可使用。5给出下列T-SQL语句的运行结果。DECLARE d DATETIMESET d='2013-8-26'SELECT d+10,d-10解:6给出下列各T-SQL语句的运行结果。(1) SELECT CHARINDEX('科学'
50、;,'计算机科学与技术专业')(2) SELECT ROUND(26.213+124.1869,2)(3) SELECT STR(234.5678,6,2)(4) SELECT '25+12='+cast(37 as nvarchar)解:(1) 4 (2) 150.4000 (3) 234.57 (4) 25+12=37第五章 数据库和数据表管理一、填空题在SQL Server中,数据库是由数据文件和事务日志文件组成的,一个数据库至少应包含一个数据文件和一个事务日志文件。 在SQL Server中主数据文件的扩展名是.mdf。在SQL Server中辅助数据文
51、件的扩展名是.ndf。在SQL Server中日志文件的扩展名是.ldf。在T-SQL中,用USE语句来完成不同数据库之间的切换。二、名词解释主数据文件:是数据库的起点,其中包含数据库的初始信息,记录数据库所拥有的文件指针。每个数据库有且仅有一个主数据文件,这是数据库必需的文件。主数据文件的扩展名是.mdf。文件组:在SQL Server中允许用户将多个文件划分一个文件集合,这些文件可以在不同的磁盘上,并为这一集合命名,这就是文件组。 主文件组:是包含主要文件的文件组。所有系统表和没有明确分配给其他文件组的任何文件都被分配到主文件组中,一个数据库只有一个主文件组。用户定义文件组:是用户首次创建数据库时,或修改数据库时自定义的,其目的是为了将数据存储进行合理的分配,以提高数据的读写效率。默认文件组:每个数据库中均有一个文件组被指定为默认文件组。如果在数据库中创建对象时没有指定对象所属的文件组,对象将被分配给默认文件组。在任何时候,只能将一个文件组指定为默认文件组。三、简答题1.在SQL Server中辅助数据文件的作用?除主数据文件以外的所有其他数据文件都是辅助数据文件。它用来存储主数据文件未存储的所有其它数据和对象,它不是数据库必需的文件。当一个数据库需
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 陕西职业技术学院《焊接结构制造技术》2023-2024学年第一学期期末试卷
- 2024至2030年混泥土岔枕绝缘套管项目投资价值分析报告
- 职中实习合同范例
- 2024至2030年免处理油墨项目投资价值分析报告
- 陕西铁路工程职业技术学院《数学教学技能训练》2023-2024学年第一学期期末试卷
- 2024年防腐垫片项目可行性研究报告
- 货运保险协议合同范例
- 员工解约协议合同范例
- 2024年水基磨光粘合胶项目可行性研究报告
- 公司实习合同范例
- 《中国丧葬礼仪》课件
- 华为ICT大赛(网络赛道)高频备考试题及答案
- 2024年1月福建高中学业水平合格考物理试卷真题(含答案解析)
- 昆明理工大学《自然语言处理》2023-2024学年第一学期期末试卷
- 中国高血压防治指南(2024年修订版)解读课件
- 水利水电工程施工生涯发展展示
- 仲恺农业工程学院《C程序设计》2021-2022学年期末试卷
- 2024年护士资格考试专业实务试卷及解答参考
- GB/T 44815-2024激光器和激光相关设备激光束偏振特性测量方法
- 住建局条文解读新规JGJT46-2024《施工现场临时用电安全技术标准》
- 专项15-分式方程的应用-八大题型
评论
0/150
提交评论