王珊《数据库系统概论》(第4版)配套题库【课后习题】第5章~第8章【圣才出品】
- 格式:pdf
- 大小:1.13 MB
- 文档页数:31
练习五一、单选题1.E-R图是数据库设计的工具之一,它适用于建立数据库的______。
A.概念模型B.逻辑模型C.结构模型D.物理模型2.在关系数据库设计中,设计关系模式是______的任务。
A.需求分析阶段B.概念设计阶段C.逻辑设计阶段D.物理设计阶段3.数据库物理设计完成后,进入数据库实施阶段,下列各项中不属于实施阶段的工作是______。
A.建立库结构B.扩充功能C.加载数据D.系统调试4.从E-R模型关系向关系模型转换时,一个M:N联系转换为关系模式时,该关系模式的关键字是______。
A.M端实体的关键字B.N端实体的关键字C.M端实体关键字与N端实体关键字组合D.重新选取其他属性5.在数据系统中,对存取权限的定义称为______。
A.命令B.授权C.定义D.审计6.______是DBMS的基本单位,它是用户定义的一组逻辑一致的程序序列。
A.程序B.命令C.事务D.文件7.事务的原子性是指______。
A.事务中包括的所有操作要么都做,要么都不做B.事务一旦提交,对数据库的改变是永久的C.一个事务内部的操作及使用的数据对并发的其他事务是隔离的D.事务必须是使数据库从一个一致性状态变到另一个一致性状态8.若数据库中只包含成功事务提交的结果,则此数据库就称为处于______状态。
A.安全B.一致C.不安全D.不一致9.若系统在运行过程中,由于某种原因,造成系统停止运行,致使事务在执行过程中以非控制方式终止,这时内存中的信息丢失,而存储在外存上的资料未受影响,这种情况称为______。
A.事务故障B.系统故障C.介质故障D.运行故障10.______用来记录对数据库中资料进行的每一次更新操作。
A.后援副本B.日志文件C.数据库D.缓冲区11.数据库恢复的基础是利用转储的冗余数据。
这些转储的冗余数据库指______。
A.资料字典、应用程序、审计档案、数据库后备副本B.资料字典、应用程序、日志文件、审计档案C.日志文件、数据库后备副本D.资料字典、应用程序、数据库后备副本12.数据库恢复通常可采取如下方法:⑴定期将数据库做成①______。
数据库系统概论(第五版)王珊第五章课后习题答案1什么是数据库的完整性?答:数据库的完整性是指数据的正确性和相容性。
2 .数据库的完整性概念与数据库的安全性概念有什么区别和联系?答:数据的完整性和安全性是两个不同的概念,但是有⼀定的联系。
前者是为了防⽌数据库中存在不符合语义的数据,防⽌错误信息的输⼊和输出,即所谓垃圾进垃圾出( Garba : e In Garba : e out )所造成的⽆效操作和错误结果。
后者是保护数据库防⽌恶意的破坏和⾮法的存取。
也就是说,安全性措施的防范对象是⾮法⽤户和⾮法操作,完整性措施的防范对象是不合语义的数据。
3 .什么是数据库的完整性约束条件?可分为哪⼏类?答完整性约束条件是指数据库中的数据应该满⾜的语义约束条件。
⼀般可以分为六类:静态列级约束、静态元组约束、静态关系约束、动态列级约束、动态元组约束、动态关系约束。
静态列级约束是对⼀个列的取值域的说明,包括以下⼏个⽅⾯: ( l )对数据类型的约束,包括数据的类型、长度、单位、精度等; ( 2 )对数据格式的约束; ( 3 )对取值范围或取值集合的约束; ( 4 )对空值的约束; ( 5 )其他约束。
静态元组约束就是规定组成⼀个元组的各个列之间的约束关系,静态元组约束只局限在单个元组上。
静态关系约束是在⼀个关系的各个元组之间或者若⼲关系之间常常存在各种联系或约束。
常见的静态关系约束有: ( l )实体完整性约束; ( 2 )参照完整性约束; ( 3 )函数依赖约束。
动态列级约束是修改列定义或列值时应满⾜的约束条件,包括下⾯两⽅⾯: ( l )修改列定义时的约束; ( 2 )修改列值时的约束。
动态元组约束是指修改某个元组的值时需要参照其旧值,并且新旧值之间需要满⾜某种约束条件。
动态关系约束是加在关系变化前后状态上的限制条件,例如事务⼀致性、原⼦性等约束条件。
4 . DBMS 的完整性控制机制应具有哪些功能?答:DBMS 的完整性控制机制应具有三个⽅⾯的功能: ( l )定义功能,即提供定义完整性约束条件的机制; ( 2 )检查功能,即检查⽤户发出的操作请求是否违背了完整性约束条件;( 3 )违约反应:如果发现⽤户的操作请求使数据违背了完整性约束条件,则采取⼀定的动作来保证数据的完整性。
王珊数据库系统概论第四版部分习题答案第⼀章1、试述数据、数据库、数据库管理系统、数据库系统的概念。
答:描述事物的符号记录称为数据;数据库是长期储存在计算机内的、有组织的、可共享的数据集合;数据库管理系统是位于⽤户与操作系统之间的⼀层数据管理软件; 数据库系统是指在计算机系统中引⼊数据库后的系统,⼀般由数据库、数据库管理系统(及其开发⼯具)、应⽤系统、数据库管理员和⽤户构成。
3.试述⽂件系统与数据库系统的区别和联系。
1)在⽂件系统中,相互独⽴的⽂件的记录内部是有结构的,管其记录内部已有了某些结构,但记录之间没有联系。
数据库系统实现整体数据的结构化,是数据库的主要特征之⼀。
2)在⽂件系统中,数据的最⼩存取单位是记录,粒度不能细到数据项。
⽽在数据库系统中,存取数据的⽅式也很灵活,可以存取数据库中的某⼀个数据项、⼀组数据项⼀个记录或或⼀组记录。
3)⽂件系统中的⽂件是为某⼀特定应⽤服务的,⽂件的逻辑结构对该应⽤程序来说是优化的,因此要想对现有的数据再增加⼀些新的应⽤会很困难,系统不容易扩充。
⽽在数据库系统中数据不再针对某⼀应⽤,⽽是⾯向全组织,具有整体的结构化。
7.试述数据模型的概念、数据模型的作⽤、数据模型的三个要素。
答:数据模型(Data Model)也是⼀种模型,它是现实世界数据特征的抽象。
作⽤:在数据库中⽤数据模型来抽象、表⽰和处理现实世界中的数据和信息。
通俗地讲数据模型就是现实世界的模拟,现有的数据库系统均是基于某种数据模型的。
三个要素:数据模型由数据结构、数据操作和完整性约束三部分组成。
10.试给出三个实际部门的E_R图,要求实体型之间具有⼀对⼀,⼀对多,多对多各种不同的联系。
15.今有⼀个层次数据库实例,试⽤⼦⼥-兄弟链接法和层次序列链接法画出它的存储结构⽰意图。
⼦⼥兄弟链接法:层次序列链接法:20.试述数据库系统三级模式结构,这种结构的优点是什么?数据库系统的三级模式结构是指数据库系统是由外模式、模式和内模式三级构成。
王珊《数据库系统概论》(第4版)模拟试题及详解(二)一、单选题1.在数据库应用系统生命周期模型中,规划与分析阶段的输出结果不包括()。
A.需求规范说明书B.系统范围与边界C.可行性分析报告D.项目计划书【答案】A【解析】在数据库应用系统生命周期模型中,规划与分析阶段的输出结果包括:①系统范围与边界;②可行性分析报告;③项目计划书等。
需求规范说明书在规划与分析阶段之后。
2.在信息系统的需求分析中,广为使用的DFD建模方法属于()。
A.结构化分析方法B.数据分析方法C.数据抽象方法D.业务归纳方法【答案】A【解析】结构化分析方法强调开发方法的结构合理性以及所开发软件的结构合理性。
在目前信息系统的需求分析中,广为使用的是两种结构化分析建模方法:数据流程图(DFD)方法和IDEFO建模方法。
3.不允许出现在最终IDEF1X图中的是()。
A.标定型联系B.非标定型联系C.分类联系D.多对多联系【答案】D【解析】最终的IDEF模型要求所有实体集间的联系都必须是确定联系,不允许出现“多对多”的不确定联系。
4.下列哪些属性不适合建立索引?()。
A.经常出现在GROUP BY子句中的属性B.经常参与连接操作的属性C.经常出现在WHERE子句中的属性D.经常需要进行更新操作的属性【答案】D【解析】需要经常执行查询操作并且数据量很大的表一般会建立索引。
对于经常出现在WHERE子句、ORDER BY子句和GROUP BY子句中的属性可以考虑建立索引;建立索引可以优化查询操作,但对于插入、删除和更改操作没有影响。
5.在数据库应用系统生命周期模型中,作为系统总体设计阶段输入的是()。
A.技术可行性分析报告和需求规范说明书B.软硬件选型和配置设计C.数据库应用系统体系结构设计D.应用软件总体设计【答案】A【解析】软件生命周期包括:①制定计划;②需求分析;③软件设计;④程序编写;⑤软件测试;⑥运行与维护。
系统总体设计阶段是在可行性分析和需求分析的基础上进行的,所以技术可行性分析报告和需求规范说明书是系统总体设计阶段的输入。
第11章并发控制一、选择题1.实现数据库并发控制的主要方法是()。
A.授权B.索引C.日志D.封锁【答案】D【解析】数据库管理系统对事务的并发执行进行控制,以保证数据库一致性,最常用的方法是封锁的方法,即当一个事务访问某个数据项时,以一定的方式锁住该数据项,从而限制其他事务对该数据项的访问。
2.在并发控制技术中最常用的是封锁,对于共享锁(S)和排他锁(X)来说,下面列出的相容关系中,哪一个是正确的()。
A.X-X:相容B.S-S:相容C.S-X:相容D.X-S:相容【答案】B【解析】为了避免发生并发操作引起的数据不一致性问题,则采用数据封锁技术实现并发控制。
封锁是防止存取同一资源的用户之间相互干扰的机制,即当一个用户对数据库某个数据对象执行修改操作时,对该部分数据加锁,拒绝其他用户对该部分的并发访问要求,直至该事务执行完毕才释放数据对象;所以只有当两事务都是读取数据且都加S锁时才相容。
3.如果系统发生死锁,参与死锁的进程的个数至少是()个。
A.3B.1C.2D.4【答案】C【解析】由于各进程互相独立地活动,不断申请和释放软硬件资源,可能会出现这样一种状态:两个或两个以上的进程彼此等待对方拥有的而又不会释放的资源,则所有进程都不能进一步向前运行,这种状态就称为死锁。
因此,参与死锁的进程至少是两个。
4.对数据对象施加封锁可能会引起活锁和死锁问题,避免活锁的简单方法是采用()的策略。
A.顺序封锁法B.依次封锁法C.优先级高先服务D.先来先服务【答案】D【解析】活锁:某个事务永远得不到对某个数据资源的封锁,从而永远处于等待状态的现象;采用先来先服务的策略可以有效地避免活锁。
5.二级封锁协议可防止()。
A.不可重复读、丢失修改B.读“脏”数据C.读“脏”数据、丢失修改D.不可重复读、读“脏”数据【答案】C【解析】一级封锁协议可防止丢失修改;二级封锁协议可以防止丢失修改和读“脏”数据;三级封锁协议可防止丢失修改、读“脏”数据和不可重复读。
第1章绪论1 .试述数据、数据库、数据库系统、数据库管理系统的概念。
答:( l )数据(Data ) :描述事物的符号记录称为数据。
数据的种类有数字、文字、图形、图像、声音、正文等。
数据与其语义是不可分的。
解析在现代计算机系统中数据的概念是广义的。
早期的计算机系统主要用于科学计算,处理的数据是整数、实数、浮点数等传统数学中的数据。
现代计算机能存储和处理的对象十分广泛,表示这些对象的数据也越来越复杂。
数据与其语义是不可分的。
500 这个数字可以表示一件物品的价格是500 元,也可以表示一个学术会议参加的人数有500 人,还可以表示一袋奶粉重500 克。
( 2 )数据库(DataBase ,简称DB ) :数据库是长期储存在计算机内的、有组织的、可共享的数据集合。
数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。
( 3 )数据库系统(DataBas 。
Sytem ,简称DBS ) :数据库系统是指在计算机系统中引入数据库后的系统构成,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。
解析数据库系统和数据库是两个概念。
数据库系统是一个人一机系统,数据库是数据库系统的一个组成部分。
但是在日常工作中人们常常把数据库系统简称为数据库。
希望读者能够从人们讲话或文章的上下文中区分“数据库系统”和“数据库”,不要引起混淆。
( 4 )数据库管理系统(DataBase Management sytem ,简称DBMs ) :数据库管理系统是位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和维护数据。
DBMS 的主要功能包括数据定义功能、数据操纵功能、数据库的运行管理功能、数据库的建立和维护功能。
解析DBMS 是一个大型的复杂的软件系统,是计算机中的基础软件。
目前,专门研制DBMS 的厂商及其研制的DBMS 产品很多。
第四部分模拟试题王珊《数据库系统概论》(第4版)模拟试题及详解(一)一、单选题1.下列有关数据库系统及相关内容的说法中,错误的是()。
A.数据库系统是由计算机软硬件组成的复杂系统,其体系结构与系统硬件平台密切相关B.数据库管理系统提供了查询、插入、删除、更新等通用数据操作,但没有提供各种面向具体应用领域的业务处理功能C.数据库中的数据是按照一定的数据模型组织和存储的、可供多个用户共享的、具有最小冗余度的相关数据的集合D.数据字典记录数据库系统运行时数据库操作情况的日志信息,通常由数据库管理员管理和维护【答案】D【解析】数据字典也称为系统目录,主要存储数据库对象的各类描述信息和数据库管理系统所需的控制信息。
但并不存储数据库系统运行时数据库操作情况的日志信息。
2.触发器是一种特殊的存储过程,它是由用户对数据的更新操作自动引发执行的。
下列数据库操作中,适用于触发器实现的是()。
A.并发控制B.恢复控制C.可靠性控制D.完整性控制【答案】D【解析】触发器是SQL Server系统提供给应用程序开发人员和数据库分析员的用来强化约束,来维护数据的完整性和一致性的一种特殊的存储过程。
3.数据库概念设计是面向企业或组织中的数据需求的。
下列有关概念模型设计的说法中,错误的是()。
A.按照具有相同属性特征原则对客观事物进行分类,在分类的基础上概括命名,得到实体集B.分析和定义实体集中的每一个实例,并用有意义的符号或文字分别描述它们C.从一个联系的两端(两个方向)确定实体集之间联系的基数,并把联系的基数标注在模型中D.要保证一个实体集中定义的每一个属性有意义、不重名【答案】B【解析】从数据的观点出发,数据库概念模型是指观察系统中数据的采集、传输、处理、存储、输出等,经过分析、总结之后建立起来的一个逻辑模型。
这个模型不关心具体的实现方式和细节,而是主要关心数据在系统中的各个处理阶段的状态,所以无需分析和定义、描述实体集中的每一个实例。
第9章关系查询处理和查询优化一、选择题1.关系代数表达式的优化策略中,首先要做的是()。
A.对文件进行预处理B.尽早执行选择运算C.执行笛卡尔积运算D.投影运算【答案】B2.在关系代数运算中,最费时间和空间的是()。
A.选择和投影运算B.除法运算C.笛卡尔积和连接运算D.差运算【答案】C【解析】在关系代数运算中,最费时间和空间的是笛卡尔积和连接运算,所以尽可能放在后面做。
3.根据系统所提供的存取路径,选择合理的存取策略,这种优化方式称为()。
A.物理优化B.代数优化C.规则优化D.代价估算优化【答案】A【解析】物理优化是根据数据字典中的存取路径、数据的存储分布以及聚簇情况等信息来选择低层的存取路径。
4.在关系代数表达式的等价优化中,不正确的叙述是()。
A.尽可能早地执行连接B.尽可能早地执行选择C.尽可能早地执行投影D.把笛卡尔积和随后的选择合并成连接运算【答案】A【解析】在关系代数表达式中,连接运算的结果常常是一个较大的关系。
如果尽可能早地执行连接,则运算得到的中间结果就会很大。
5.设E是关系代数表达式,F是选取条件表达式,并且只涉及A1,…,A n属性,则有()。
A.бF(πA1,…,An(E))≡πA1,…,An(бF(E))B.бF(πA1,…,An(E))≡πA1,…,An(E)C.бF(πA1,…,An(E))≡πA1(бF(E))D.πA1,…,An(бF(E))≡πA1,…,An(бF(πA1,…,An,B1,…,Bm(E)))【答案】A6.如果一个系统定义为关系系统,则它必须()。
A.支持关系数据库B.支持选择、投影和连接运算C.A和B均成立D.A、B都不需要【答案】C7.如果一个系统为关系完备系统,那么它支持()。
A.关系数据结构B.A与选择、投影和连接C.A与所有的关系代数操作D.C与实体完整性、参照完整性【答案】C二、填空题1.关系系统的查询优化既是关系数据库管理系统实现的关键技术,又是关系系统的优点。
数据库课后习题答案--<王珊.萨师煊>第四版第1章绪论1.试述数据、数据库、数据库系统、数据库管理系统的概念。
答:( l)数据( Data ) :描述事物的符号记录称为数据。
数据的种类有数字、文字、图形、图像、声音、正文等。
数据与其语义是不可分的。
解析在现代计算机系统中数据的概念是广义的。
早期的计算机系统主要用于科学计算,处理的数据是整数、实数、浮点数等传统数学中的数据。
现代计算机能存储和处理的对象十分广泛,表示这些对象的数据也越来越复杂。
数据与其语义是不可分的。
500 这个数字可以表示一件物品的价格是 500 元,也可以表示一个学术会议参加的人数有 500 人,还可以表示一袋奶粉重 500 克。
( 2)数据库( DataBase ,简称 DB ) :数据库是长期储存在计算机内的、有组织的、可共享的数据集合。
数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。
( 3)数据库系统( DataBas 。
Sytem ,简称 DBS ) :数据库系统是指在计算机系统中引入数据库后的系统构成,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。
解析数据库系统和数据库是两个概念。
数据库系统是一个人一机系统,数据库是数据库系统的一个组成部分。
但是在日常工作中人们常常把数据库系统简称为数据库。
希望读者能够从人们讲话或文章的上下文中区分“数据库系统”和“数据库”,不要引起混淆。
( 4)数据库管理系统( DataBase Management sytem ,简称 DBMs ) :数据库管理系统是位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和维护数据。
DBMS 的主要功能包括数据定义功能、数据操纵功能、数据库的运行管理功能、数据库的建立和维护功能。
解析 DBMS 是一个大型的复杂的软件系统,是计算机中的基础软件。
第5章数据库完整性
1.什么是数据库的完整性?
答:数据库的完整性是指数据的正确性和相容性。
数据库的完整性是为了防止数据库中存在不符合语义的数据,也就是防止数据库中存在不正确的数据。
2.数据库的完整性概念与数据库的安全性概念有什么区别和联系?
答:数据的完整性和安全性是两个不同的概念,但是有一定的联系。
数据的完整性是为了防止数据库中存在不符合语义的数据,也就是防止数据库中存在不正确的数据。
数据的安全性是保护数据库防止恶意的破坏和非法的存取。
因此,完整性检查和控制的防范对象是不合语义的、不正确的数据,防止它们进入数据库。
安全性控制的防范对象是非法用户和非法操作,防止他们对数据库数据的非法存取。
3.什么是数据库的完整性约束条件?
答:完整性约束条件是指数据库中的数据应该满足的语义约束条件。
完整性约束条件分为六类:静态列级约束、静态元组约束、静态关系约束、动态列级约束、动态元组约束、动态关系约束。
(1)静态列级约束是对一个列的取值域的说明,包括数据类型的约束:数据的类型、长度、单位、精度等;对数据格式的约束;对取值范围或取值集合的约束;空值的约束;其他约束。
(2)静态元组约束就是规定组成一个元组的各个列之间的约束关系,静态元组约束只局限在单个元组上。
(3)静态关系约束是在一个关系的各个元组之间或者若干关系之间常常存在各种联系或约束,常见的静态关系约束有:实体完整性约束,参照完整性约束,函数依赖约束。
(4)动态列级约束是修改列定义或列值时应满足的约束条件,包括下面两方面:修改列定义时的约束,修改列值时的约束。
(5)动态元组约束是指修改某个元组的值时需要参照其旧值,并且新旧值之间需要满足某种约束条件。
(6)动态关系约束是加在关系变化前后状态上的限制条件,例如事务一致性、原子性等约束条件。
4.RDBMS的完整性控制机制应具有哪些功能?
答:DBMS的完整性控制机制应具有三个方面的功能:
(1)提供定义完整性约束条件的机制。
完整性约束条件也称为完整性规则,是数据库中的数据必须满足的语义约束条件。
SQL标准使用了一系列概念来描述完整性,包括关系模型的实体完整性、参照完整性和用户定义完整性。
这些完整性一般由SQL的DDL语句来实现。
它们作为数据库模式的一部分存入数据字典中。
(2)提供完整性检查的方法。
DBMS中检查数据是否满足完整性约束条件的机制称为完整性检查。
一般在INSERT、UPDATE、DELETE语句执行后开始检查,也可以在事务提交时检查。
检查这些操作执行后数据库中的数据是否违背了完整性约束条件。
(3)违约处理。
DBMS若发现用户的操作违背了完整性约束条件,就采取一定的动作,如拒绝(NO ACTION)执行该操作,或级连(CASCADE)执行其他操作,进行违约处理以保证数据的完整性。
5.RDBMS在实现参照完整性时需要考虑哪些方面?
答:RDBMS在实现参照完整性时需要考虑以下几个方面:
(1)外码是否可以接受空值。
(2)删除被参照关系元组时的问题,系统可能采取的作法有三种:级联删除、受限删除和置空值删除。
(3)在参照关系中插入元组时的问题,系统可能采取的做法有:受限插入和递归插入。
(4)修改关系中主码的问题。
如果需要修改主码值,只能先删除该元组,然后再把具有新主码值的元组插入到关系中。
如果允许修改主码,首先要保证主码的惟一性和非空,否则拒绝修改,然后要区分是参照关系还是被参照关系。
6.假设有下面两个关系模式:
职工(职工号,姓名,年龄,职务,工资,部门号),其中职工号为主码;
部门(部门号,名称,经理名,电话),其中部门号为主码;
用SQL语言定义这两个关系模式,要求在模式中完成以下完整性约束条件的定义:(1)定义每个模式的主码;
(2)定义参照完整性;
(3)定义职工年龄不得超过60岁。
答:
7.在关系系统中,当操作违反实体完整性、参照完整性和用户定义的完整性约束条件时,一般如何处理?
答:(1)当违反实体完整性约束条件时,一般采用的方式是拒绝执行,比如拒绝插入或拒绝修改等。
(2)当违反参照完整性约束条件时,并不都是简单地拒绝执行,有时要根据应用语义执行一些附加的操作,以保证数据库的正确性。
比如拒绝执行,级连操作,设置为空值等。
(3)当违反用户定义的完整性约束条件时,一般采用的方式是拒绝执行。
第6章关系数据理论
1.理解并给出下列术语的定义:
函数依赖、部分函数依赖、完全函数依赖、传递依赖、候选码、主码、外码、全码、1NF、2NF、3NF、BCNF、多值依赖、4NF。
答:(1)函数依赖:设R(U)是属性集U 上的关系模式。
X,Y 是属性集U 的子集。
若对于R(U)的任意一个可能的关系r,r 中不可能存在两个元组在X 上的属性值相等,而在Y 上的属性值不等,则称X 函数确定Y 或Y 函数依赖于X,记作X→Y。
(即只要X 上的属性值相等,Y 上的值一定相等。
)
(2)部分函数依赖:若X→Y,但Y 不完全函数依赖于X,则称Y 对X 部分函数依赖,记作:P X Y
−−→(3)完全函数依赖:在R(U)中,如果X→Y,并且对于X 的任何一个真子集X′,都有X→Y,则称Y 对X 完全函数依赖,记作F X Y
−−→(4)传递依赖:在R(U)中,如果X→Y,(Y ⊈X),Y ↛X,Y→Z,Z ∉Y,则称Z 对X 传递函数依赖,记为:X Z
−−−→传递(5)候选码:设K 为R<U,F>中的属性或属性组合,若
F K U −−→,则K 为
R 的候选码。
(6)主码:若候选码多于一个,则选定其中的一个为主码。
(7)外码:关系模式R 中属性或属性组X 并非R 的码,但X 是另一个关系模式的码,则称X 是R 的外部码,也称外码。
(8)全码:整个属性组是码,称为全码。
(9)1NF:关系模式R 的每一个分量是不可再分的数据项。
(10)2NF:关系模式R∈1NF,且每一个非主属性完全函数依赖于码。
(11)3NF:关系模式R<U,F>中不存在这样的码X、属性组Y及非主属性Z(Z不是Y的子集)使得X→Y,Y↛X,Y→Z成立。
(12)BCNF:关系模式R<U,F>∈1NF,X→Y且Y不是X的子集时,X必含有码。
(13)多值依赖:设R(U)是属性集U上的一个关系模式。
X,Y,Z是U的子集,并且Z=U-X-Y。
关系模式R(U)中多值依赖x→→y成立,当且仅当对R(U)的任一关系r,给定的一对(x,z)值,有一组y的值,这组值仅仅决定于X值而与Z值无关。
(14)4NF:关系模式R<U,F>∈1NF,如果对于R的每个非平凡多值依赖X→→Y (Y不是X的子集,Z=U-X-Y不为空),X都含有码。
2.建立一个关于系、学生、班级、学会等诸信息的关系数据库。
描述学生的属性有:学号、姓名、出生年月、系名、班号、宿舍区;
描述班级的属性有:班号、专业名、系名、人数、入校年份;
描述系的属性有:系号、系名、系办公室地点、系人数;
描述学会的属性有:学会名、成立年份、地点、学会会员人数。
有关语义如下:一个系有若干专业,每个专业每年只招一个班,每个班有若干学生。
一个系的学生住在同一宿舍区。
每个学生可参加若干学会,每个学会有若干学生。
学生参加某学会有一个入会年份。
请给出关系模式,写出每个关系模式的极小函数依赖集,指出是否存在传递函数依赖,对于函数依赖左部是多属性的情况讨论函数依赖是完全函数依赖,还是部分函数依赖。
指出各关系的候选码、外部码,是否有全码存在。
答:(1)关系模式如下:。