2022年中南民族大计算机与技术专业《数据库原理》目期末试卷B(有答案).docx
2022年中南民族大学计算机科学与技术专业数据库原理科目期末试卷B(有答案)一、填空题1、视图是一个虚表,它是从导出的表。在数据库中,只存放视图的,不存放视图对应的O2、关系数据库中基于数学的两类运算是和°3、在SELECT命令中,子句用于选择满足给定条件的元组,使用子句可按指定列的值分组,同时使用子句可提取满足条件的组。4、关系规范化的目的是O5、已知系(系编号,系名称,系主任,电话,地点)和学生(学号,姓名,性别,入学日期,专业,系编号)两个关系,系关系的主码是,系关系的外码是,学生关系的主码是,外码是。6、在SELECT命令中进行查询,若希望查询的结果不出现重复元组,应在SELECT语句中使用保留字。7、使某个事务永远处于等待状态,得不到执行的现象称为o有两个或两个以上的事务处于等待状态,每个事务都在等待其中另一个事务解除封锁,它才能继续下去,结果任何一个事务都无法执行,这种现象称为。8、设某数据库中有商品表(商品号,商品名,商品类别,价格)。现要创建一个视图,该视图包含全部商品类别及每类商品的平均价格。请补全如下语句:CREATEVIEWVl(商品类别,平均价格)ASSELECT商品类别,FROM商品表GRoUPBY商品类别;9、从外部视图到子模式的数据结构的转换是由实现;模式与子模式之间的映象是由实现;存储模式与数据物理组织之间的映象是由实现。10、事务故障、系统故障的恢复是由完成的,介质故障是由完成的。二、判断题11、在CREATElNDEX语句中,使CLUSTERED来建立簇索引。()12、SQLSerVer有两种安全性认证模式:WindowsNTSQLServero()13、在数据库表中,空值表示数值0。()14、连接是数据库最耗时的操作。()15、关系是一张二维表。()16、机制虽然有一定的安全保护功能,但不精细,往往不能达到应用系统的要求。()17、关系中任何一列的属性取值是不可再分的数据项,可取自不同域中的数据。()18、在SQL中,ALTERTABLE语句中MODIFY用于修改字段的类型和长度等,ADD用于添加新的字段。()19、数据库模式和实例是一回事。()20、在SQL中,ALTERTABLE语句中MODlFY用于修改字段的类型和长度等,ADD用于添加新的字段。()21、在一个关系中,不同的列可以对应同一个域,但必须具有不同的列名。()22、在关系运算中,投影是最耗时的操作。()23、数据模型的核心构成要素是数据结构。()24、视图是观察数据的一种方法,只能基于基本表建立。()25、有了外模式/模式映象,可以保证数据和应用程序之间的物理独立性。()三、选择题26、设关系R(A,B,C)和S(B,C,D),下列各关系代数表达式不成立的是()OA.R÷SB. B(R)UB(S)C. RSD. RXS27、恢复机制的关键问题是()。A.登记日志文件B.数据转储C.建立冗余数据D.数据镜像28、建立关于系、学生、班级、社团等信息的一个关系数据库,一个系有若干个专业,每个专业每年只招一个班,每个班有若干学生,一个系的学生住在同一宿舍区,每个学生可以参加若干个社团,每个社团有若干学生。描述学生的属性有:学号、姓名、出生年月、系名、班号、宿舍区。描述班级的属性有:班号、专业名、系名、人数、入学年份。描述系的属性有:系号、系名、系办公地点、人数。描述社团的属性有:社团名、成立年份、地点、人数、学生参加某社团的年份。回答以下问题:(1)画出E-R图。(2)请给出关系模式,写出每个关系模式的最小函数依赖集,指出是否存在传递函数依赖,对于函数依赖左部是多属性的情况讨论函数依赖是完全函数依赖,还是部分函数依赖。指出各关系的候选码、外码,有没有全码存在?29、SSQLServer2000,有教师表(教师号,姓名,职称,工资)。现要根据教师的职称来添加教师的工资,增加规则为:"教授"增加400,"副教授"增加300,"讲师"增加200。下列语句中正确的是()。A.DATHr-VK-HENfcJ?IHEX400VHEILKWTHE'300WHENF!THENMCENDDVPDATZ敦.麦ST*-<ASE1-XvHEXF-fcSTHEN400n*HETHEN300WHEN的可-ATIHHN200ENDC.UPDATH卷SETZ-CASE鼠讣WHENttS,IHENZj*-Zje-400WHEX:SHiEX二W-二艺-300WHEN;=*THENZS-ZJ-200nENDUPDATE年.京SET二烹-二,YASE茄TVVHEN节亡-W;WTHEw二受二笠TOO30、关系代要做的是数表达式的优化策略中,首先()OVHE<Pr-IiSIHEW二笠二,ToOWHENrTHENZ-Z-200ENDA.对文件进行预处理B.尽早执行选择运算C.执行笛卡尔积运算D.投影运算31、以下有关索引的叙述中正确的是()。A.索引越多,更新速度越快B.索引可以用来提供多种存取路径C.索引需要用户维护,并列索引中列的个数不受限制D.索引需要用户维护32、关系代数表达式的优化策略中,首先要做的是()。A.对文件进行预处理B.尽早执行选择运算C.执行笛卡尔积运算D.投影运算33、在SQLSerVer中,可以通过数据库对象及各种约束来保证数据的完整性,以下都属于数据库对象的有()。A. DEFAULT.CHECKffUNIQUEB. DEFAULT.CHECKWRULEC. CHECKSDEFAULTD. DEFAULT和RULE34、Ln或m:n)。实体型之间的联系不仅存在于两个实体型之间,也存在于两个以上的实体型之间。同一个实体集内的各实体之间也可以存在联系。8、代表层次模型、网状模型、关系模型和面向对象模型的典型系统分别是()。A. DBTG、IMS、SQLServer>GISB. IMS、DBTGsOracle、GISC. Oracle.IMS>Sybase、DBTGD. GIS、DBTG.Access.IMS35、关于数据仓库的特性()。A.面向主题的特性是指在组织数据仓库数据时,需要将各种分析需求归类并抽象,形成相应的分析应用主题,并根据分析应用主题的数据需求设计和组织数据B.集成特性是指需要将业务系统中的所有数据抽取出来,载入到数据仓库中C.集成特性是指需要将企业整个架构中的各种数据和应用集中到数据仓库中D.随时间变化性是指数据仓库中的每个数据单元一般都有时间标志,且其中各种数据(包括原始数据)会随时间变化被经常修改36、在为业务繁忙的企业的多个部门服务的数据库系统中,同时开展各部门的OLTP业务和数据分析业务会给数据库系统带来性能冲突,下列方案中无法从根本上解决性能冲突的是()。A.抽取出各部门需要的分析数据,建立各部门独立的数据集市,将数据分析业务转移到数据集市中B.抽取出企业所有分析功能所需的分析数据,建立统一的企业级数据仓库环境,将企业的大部分分析业务转移到数据仓库环境中C.抽取出企业的近期业务数据,建立操作型数据存储(ODS),将一些快速分析业务转移到操作型数据存储中D.不建立新的数据存储体系,在基本业务处理时间内开展OLTP业务,在其余时间开展分析业务37、在并发控制技术中最常用的是封锁,对于共享锁(S)和排他锁(X)来说,下面列出的相容关系中,哪一个是正确的()。A. X-X:相容B. S-S:相容C.S-X:相容D.X-S:相容38、XTAi(i-1,2,k)成立是XTAIA2Ak成立的()oA.充分条件B.必要条件C.充要条件D.既不充分也不必要39、关于数据仓库设计,下述说法正确的是()。A.数据仓库项目的需求很难把握,所以不可能从用户的需求出发来进行数据仓库的设计,只能从数据出发进行设计B.在进行数据仓库主题数据模型设计时,应该按面向部门业务应用的方式来设计数据模型C.在进行数据仓库主题数据模型设计时要强调数据的集成性D.在进行数据仓库概念模型设计时,需要设计实体关系图,给出数据表的划分,并给出每个属性的定义域40、以下关于OLAP的叙述中错误的是()。A.一个多维数组可以表示为(维L维2,,维n)B.维的一个取值称为该维的一个维成员C. OLAP是联机分析处理D. OLAP是以数据仓库进行分析决策的基础四、简答题41、什么是数据库的恢复?恢复的基本原则是什么?恢复是如何实现的?42、举例说明关系模式和关系的区别。43、什么叫数据与程序的物理独立性?什么叫数据与程序的逻辑独立性?为什么数据库系统具有数据与程序的独立性?44、什么是NoSQL,试述NoSQL系统在人数据库发展中的作用。45、试述常用的意向锁:IS锁、IX锁、SlX锁,给出这些锁的相容矩阵。五、综合题46、某航空公司希望能够分析在其服务旅客的旅行情况,这样可以为公司正确定位航空市场中的客户市场。并且希望能够跟踪不同航线上旅客的各季节变化情况和增长,并跟踪在不同航班上所消费的食物和饮料情况,这样可以帮助航空公司安排不同航线上的航班和食品供应。设计满足该主题的数据仓库,画出OLAP数据模型和逻辑模型。47、表所示为关系SC的实例数据,其中:Sno为学号、Cno为课程号、CtitIe为课程名、Iname为教师名、IIoCa为教师地址,Grade为成绩。(1)该关系为第几范式?(2)是否存在插入、删除异常?若存在,请说明是在什么情况下发生?发生的原因是什么?(3)请将它分解为高一级范式。(4)分解后的关系能否解决操作异常问题?48、设计一个程序采用游标方式输出求每个学生的班号、学号、姓名、课程名和分数,并以班号和学号排序,给出程序的执行结果。参考答案一、填空题1、【答案】一个或几个基本表;定义;数据2、【答案】关系代数;关系演算3、【答案】WHERE;GROUPBY;HAVING4、【答案】控制冗余,避免插入和删除异常,从而增强数据库结构的稳定性和灵活性5、【答案】系编号;无;学号;系编号6、【答案】DISTINCT7、【答案】活锁;死锁8、【答案】AVG(价格)【解析】SQL中,AVG(字段名)函数用来计算一组记录中某个字段值的平均值。9、【答案】应用程序;DBMS;操作系统的存取方法10、【答案】系统自动;DBA执行恢复操作过程二、判断题11、【答案】对12、【答案】错13、【答案】错14、【答案】对15、【答案】对16、【答案】对17、【答案】错18、【答案】错19、【答案】错20、【答案】错21、【答案】对22、【答案】错23、【答案】对24、【答案】错25、【答案】错三、选择题26、【答案】C【解析】RS运算也要求R和S具有相同的属性。27、【答案】C【解析】数据库的恢复机制关键问题是建立冗余数据,建立冗余数据的主要方式有数据转储、建立日志文件等,已备数据库出现故障时利用冗余数据进行恢复。28、答:(1)对应的E-R图,如图所示。(2)所有关系模式如下。学生关系:学生(学号,姓名,出生年月,系名,班号,宿舍区)候选码:学号;外码:系名,班号。最小依赖集Fm=学号一姓名,学号一出生年月,学号一班号,班号一系名,系名一宿舍区。其中,存在以下传递函数依赖:学号T系名,系名“学号,系名一宿舍区,因为学号今宿舍区。班号T系名,系名”班号,系名一宿舍区,所以班号L宿舍区。学号T班号,班号“学号,班号一系名,所以学号工系名。所以学生模式最高达到2NF。班级关系:班级(班号,专业名,系名,人数,入学年份)候选码:班号和(专业名,入学年份);外码:系名。最小依赖集Fm=班号一专业名,班号一人数,班号T入学年份,专业名一系名)。存在部分函数依赖:(专业名,入学年份)T系名,而专业名一系名。另外,还存在以下传递函数依赖:班级号一专业名,专业名r班级号,专业名T系名,所以班级号-IT系名所以班级模式最高达到1NF.系关系:系(系号,系名,办公室地点,人数)候选码:系号和系名;无外码。最小依赖集Fm=系号一系名,系号一办公室地点,系号人数,系名一系号)系关系模式最高达到BCNF范式。社团关系:社团(社团名,成立年份,地点,人数)候选码:社团名;无外码。最小依赖集Fm=社团名T成立年份,社团名一地点,社团名一人数。社团关系模式最高达到BCNF范式。学生参加社团关系:参加(学号,社团名,入团年份)候选码:(学号,社团名);外码:学号,社团名。最小依赖集Fm=(学号,社团名)一入团年份),而“(学号,社团名)T入团年份”是完全函数依赖。参加关系模式最高达到BCNF范式。29、【答案】A【解析】"UPDATE表名SET"可以用来更改表中某个字段的值,如果出现分支选择情况,可以使“CASE.WHEN.THEN"语句。30、【答案】B31、【答案】B【解析】索引是建立在列上的一种数据对象,它对表中的数据提供一种逻辑顺序,当在数据库表中搜索某一行时,可以通过使用索引来找到它的物理位置。索引一旦建立后就交由DBMS管理,不需人工干预,所以索引是动态的,每当数据库表更新,相应的索引也随之更新,为此,过多的索引列和频繁的数据更新都会消耗系统资源,增加系统开销,从而降低索引应有的作用。32、【答案】B33、【答案】D【解析】SQLSerVer的约束包括UNIQUE、DEFAULTRULE、PRIMARYKEY和FOREIGNKEY等,但属于数据库对象的是RULE、DEFAULT,当它们创建后可以绑定到一列或者几列上,并可以重复使用。34、【答案】B【解析】按照层次模型建立的数据库系统称为层次模型数据库系统,其典型代表是IBM的IMS(InformationManagementSystem)。按照网状数据结构建立的数据库系统称为网状数据库系统,其典型代表是DBTG(DataBaseTaskGroup)。按照关系数据结构建立的数据库系统称为关系数据库系统,关系数据库管理系统是被公认为最有前途的一种数据库管理系统。自20世纪80年代以来,作为商品推出的数据库管理系统几乎都是关系型的,例如,Oracle.SybaseInformix、VisualFoxProACCeSS和SQLSerVer等。按照面向对象数据结构建立的数据库系统称为面向对象数据库系统,其典型代表是GIS(GeographicInformationSystem)。35、【答案】A【解析】数据仓库是一个面向主题、集成、非易失、随时间变化的数据集合,基于传统数据库技术,主要目标是研究如何更有效的组织大规模复杂的数据。数据仓库是基于数据库技术的,是研究如何将大规模复杂的数据更有效的组织用于方便使用的技术。36、【答案】C【解析】建立操作型数据存储,从联机事务处理环境中抽取数据,建立新的数据分析环境是解决企业联机事务处理业务和数据分析业务所引发的数据库系统性能冲突问题的根本解决方法。37、【答案】B【解析】为了避免发生并发操作引起的数据不一致性问题,则采用数据封锁技术实现并发控制。封锁是防止存取同一资源的用户之间相互干扰的机制,即当一个用户对数据库某个数据对象执行修改操作时,对该部分数据加锁,拒绝其他用户对该部分的并发访问要求,直至该事务执行完毕才释放数据对象;所以只有当两事务都是读取数据且都加S锁时才相容。38、【答案】C【解析】若X-A4Ak成立,由分解规则可得XTAi(i=l,2,,k)成立;若XAi(i=l,2,k)成立,由合并规则可得XTAlA2Ak成立。39、【答案】C【解析】数据仓库项目的设计一定要从用户的需求出发。进行数据仓库主题数据模型设计时,应该按面向主题而不是部门业务应用的方式来设计数据模型。在进行数据仓库概念模型设计时,可以设计实体关系图,而在逻辑设计时才给出数据表的划分,并给出每个属性的定义域。40、【答案】A【解析】一个多维数组可以表示为:(维1、维四、简答题41、答:(1)在数据库系统投入运行后,就可能会出现各式各样的故障,即数据库被破坏或数据不正确。作为DBMS,应能把数据库从被破坏后不正确的状态,变成最近的一个正确的状态,这个过程称为“恢复"的过程。DBMS的这种能力称为可恢复性。(2)恢复的基本原则就是"冗余",即数据库重复存储。数据库恢复可用以下方法实现:周期性地对整个数据库进行复制或转储。建立日志文件,对于数据库的每次插入、删除或修改,都要记下改变前后的值,写到日志文件中,以便有案可查。(3)一旦发生数据库故障,则分两种情况处理:如果数据库已被破坏,如磁头脱落、磁盘损坏等,这时数据库已不能用了,就要装入最近一次复制的数据库,然后利用日志文件执行“重做”操作,将这两个数据库状态之间的所有修改重新做一遍。这样就建立了新的数据库,同时也没丢失对数据库的更新操作。如果数据库未被破坏,但某些数据不可靠,受到怀疑,例如程序在修改数据库时异常中断,这时,不必去复制存档的数据库,只需通过日志文件执行“撤消,操作,撤消所有不可靠的修改,把数据库恢复到正确的状态。42、答:关系模式是静态的,关系是动态的。对于常见的二维表,关系模式通常指的是二维表的表头,即有哪些列构成,每个列的名称、类型、长度等。关系通常指的是一张表的具体内容,因为表经常进行插入、删除、修改等操作,关系可能不一样。43、答:(1)数据与程序的物理独立性:当数据库的存储结构改变,由数据库管理员对模式/内模式映像做相应改变,可以使模式保持不变,从而应用程序也不必改变,保证了数据与程序的物理独立性,简称数据的物理独立性。(2)数据与程序的逻辑独立性:当模式改变时(例如增加新的关系、新的属性、改变属性的数据类型等),由数据库管理员对各个外模式/模式的映像做相应改变,可以使外模式保持不变。应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。(3)数据库管理系统在三级模式之间提供的两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。16、试述数据库系统的组成。答:数据库系统一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。(1)硬件平台及数据库。由于数据库系统数据量都很大,加之DBMS丰富的功能使得自身的规模也很大,因此整个数据库系统对硬件资源提出了较高的要求:要有足够大的内存,存放操作系统、DBMS的核心模块、数据缓冲区和应用程序;有足够的大的磁盘或磁盘阵列等设备存放数据库,有足够的磁带(或光盘)作数据备份;要求系统有较高的通道能力,以提高数据传送率。(2)软件。DBMS:支持DBMS运行的操作系统;具有与数据库接口的高级语言及其编译系统;以DBMS为核心的应用开发工具;为特定应用环境开发的数据库应用系统。(3)人员。开发、管理和使用数据库系统的人员主要是:数据库管理员、系统分析员和数据库设计人员、应用程序员和最终用户。17、试述数据库管理员、系统分析员、数据库设计人员、应用程序员的职责。答:(1)数据库管理员:负责全面地管理和控制数据库系统。具体职责包括:决定数据库的信息内容和结构。决定数据库的存储结构和存取策略。定义数据的安全性要求和完整性约束条件。监督和控制数据库的使用和运行。数据库的改进和重组重构。(2)系统分析员:系统分析员负责应用系统的需求分析和规范说明,要和用户及DBA相结合,确定系统的硬件软件配置,并参与数据库系统的概要设计。(3)数据库设计人员:数据库设计人员负责数据库中数据的确定、数据库各级模式的设计。数据库设计人员必须参加用户需求调查和系统分析,然后进行数据库设计。在很多情况下,数据库设计人员就由数据库管理员担任。(4)应用程序员:应用程序员负责设计和编写应用系统的程序模块,并进行调试和安装。44、答:(I)NoSQL是以互联网大数据应用为背景发展起来的分布式数据管理系统,它有两种解释:一种是Non-ReIationaI,即非关系数据库;另一种是NOtonlySQL,即数据管理技术不仅仅是SQLoNoSQL系统支持的数据模型通常分为:Key-Value模型、BigTabIe模型、文档(document)。(2)NoSQL系统为了提高存储能力和并发读写能力采用了极其简单的数据模型,支持简单的查询操作,而将复杂操作留给应用层实现。该系统对数据进行划分,对各个数据分区进行备份,以应对结点可能的失败,提高系统可用性;通过大量结点的并行处理获得高性能,采用的是横向扩展的方式(ScaIeout)045、答:(1)如果对一个数据对象加IS锁,表示它的后裔结点拟加S锁。例如,要对某个元组加S锁,则要首先对关系和数据库加IS锁。(2)如果对一个数据对象加IX锁,表示它的后裔结点拟加X锁。例如,要对某个元组加X锁,则要首先对关系和数据库加IX锁。(3)如果对一个数据对象加SlX锁,表示对它加S锁,再加IX锁,即SIX=S+DG五、综合题46、答:该数据仓库的C)LAP数据模型如图所示,属雪花模式。设计对应的逻辑模型:(1)事实表如下:消费事实表(旅客编号ID;航班编号ID,食物编号ID,饮料编号ID,季节ID,乘坐次数,食物消费数量,食物消费金额)(2)维表如下:旅客基本情况表(旅客编号ID,姓名,年龄,职业,收入,地区编号,身份证,联系方式)地区表(地区编号,省,市,县,街道,邮政编码)季节表(季节ID,季节类型)航班情况表(航班编号ID,航线编号,枫票价格,机舱类型,飞行里程,始发地,目的地,时间)食物表(食物编号ID,食物名称,食物类别,食物价格)饮料表(饮料编号ID,饮料名称,饮料类别,饮料价格)47、答:(1)因为该关系的码为(Sno,Cno),其余均为非码属性,显然非码属性CtitIe对码存在部分函数依赖,因此SC没有达到2NF,只达到1NF。(2)该关系在进行数据操纵时会出现插入异常和删除异常:当增加一门新课,而没有学生选该课时,不能加入该课程信息,从而发生插入异常;当只有一位学生选某门课,删除该学生时会把该课程的信息也删除了,从而发生删除异常。原因在于非码属性Ctitle.Iname、IIOCa均部分依赖于码(Sno,Cno)o(3)要想使它由INF规范化为2NF,可以通过关系分解,去除关系中存在的非码属性对码的部分依赖。分解后为两个关系SG和Q:SG(Sno,Cno,Grade)CI(Cno,Cname,!name,Iloca)在上述两个关系中均不存在非码属性对于码的部分函数依赖,均达到2NF。(4)分解后的关系能解决INF时出现的上述操作异常问题,但是还会存在新的操作异常:新来的老师还未任课,出现新教师插入异常;取消某门课,会发生删除异常。因此,还可以对该关系继续分解,进一步规范化,达到更高的规范化程度,避免数据操纵的异常情况。【解析】判断个关系达到第几范式,首先必须明确关系的码,这样才能确定该关系的非码属性有哪几个,然后再判断各个非码属性与码的关系,从而确定该关系规范化程度。在函数依赖范畴内:如果存在非码属性对于码的部分函数依赖,则该关系没有达到2NF,只达到INF。如果不存在非码属性对于码的部分函数依赖,但是存在非码属性对于码的传递函数依赖,则该关系达到2NF,没有达到3NF。如果不存在非码属性对于码的部分函数依赖,也不存在非码属性对于码的传递函数依赖,则该关系达到3NF。如果该关系每个函数依赖的决定因素都包含码,则该关系达到BCNFo48、答:对应的程序如下:USEUniversityGoSETN0C0UNTON一声明共享变量DECLARE0sSelaSSChar(5),snointrsnamechar(8),0cnamechar(10),0scint_声明游标st-cursorDECLAREst-cursorCURSORFORSELECTS.班号,S学号,S.姓名,C.课程名,SC.分数FROMstudentS,courseC,scoreSCWHERES.学号=SC学号ANDC.课程号SC.课程号ANDSC.分数ISNOTNULLORDERBYS.班号,S学号- -打开游标OPENSJeUrSor- -提取第二行数据FETCHNEXTFROMstcursorINTOsSClaSS,sno,Sname,cname,Gscfs- -打印表标题一'PRlNT,班号学号姓名课程名分如PRINT',WHILEFETCH_STATUS«OBEGIN一打印一行数据PRINTssclass+',+CAST(6snoASchar(8)+0sname+sname+,一CAST(sJfsASchar(5)-4取下一行数据FETCHNEXTFROMSjcUrSorINTOs_SCIaSS律s_n。,gsjame,Qjnarne,SJfEND一关闭游标CLOSEst-cursor一棒放沸点DEALLOCATESJCUrSOrGO本程序的执行结果如下:班号学号姓名课程名分数09031103陆君计算机导论9209031103陆君操作系统8609031105匡明操作系统7509031105匡明计算机导论8809031109王芳计算机导论7609031109王芳操作系统6809033101李军数字电路8509033101李军计算机导论6409033107王丽计算机导论9109033107王丽数字电路7909033108曾华计算机导论78