一、单选题(每题1分,共16分)
1[单选题] 在使用UML对数据库应用系统进行建模的过程中,状态图和活动图常用于动态建模。下列状态图或活动图语法正确的是( )。
A.
B.
C.
D.
参考答案:D
参考解析:这属于UML设计范畴,所有活动有关判断的部分要用菱形表示。
2[单选题] 在开发数据库应用系统时,使用存储过程可以提高数据访问效率,降低网络流量。下列关于存储过程的说法,错误的是( )。
A.存储过程可以接受输入参数,并可将执行结果以输出参数形式返回
B.存储过程可以有多个输人参数,但只能有一个输出参数
C.定义存储过程时,在一个存储过程中可以同时包含数据的增、删、改、查操作
D.存储过程的输人参数和输出参数均可有默认值
参考答案:B
参考解析:PL/SQL主要由两种类型构成,即命名块和匿名块。匿名块每次执行时都需要进行编译,不能被存储到数据库中,也不能在其它的PL/SQL中调用。存储过程和函数是命名块,它们被编译后保存在数据库中,可以被反复调用,运行速度快。其结构为:CREATE Procedure过程名(参数列表) AS;
参数列表可以为输人参数、输出参数,且输入、输出参数均可以有多个。所以选择B选项。
3[单选题] 下列有关数据库系统及相关内容的说法中,错误的是( )。
A.数据库系统是由计算机软硬件组成的复杂系统,其体系结构与系统硬件平台密切相关。
B.数据库管理系统提供了查询、插入、删除、更新等通用数据操作,但没有提供各种面向具体应用领域的业务处理。
C.数据库中的数据是按照一定的数据模型组织和存储的、可供多个用户共享的、具有最小冗余度的相关数据集合。
D.数据字典记录数据库系统运行时数据库操作情况的日志信息,通常由数据库管理员管理和维护。
参考答案:D
参考解析:数据字典是指对数据的数据项、数据结构、数据流、数据存储、处理逻辑、外部实体等进行定义和描述,其目的是对数据流程图中的各个元素做出详细的说明。数据字典一般由数据库管理系统本身管理和维护。D选项中所说的记录数据库系统运行时数据库操作情况的日志信息是属于日志文件的内容。
4[单选题] 下列哪些属性不适合建立索引( )。
A.经常出现在GROUP BY字句中的属性
B.经常参与连接操作的属性
C.经常出现在WHERE字句中的属性
D.经常需要进行更新操作的属性
参考答案:D
参考解析:索引适合使用的条件:①在经常需要搜索的列上,可以加快搜索的速度;②在经常使用连接的列上(这些列主要是一些外键)可以加快连接的速度,在经常需要根据范围进行搜索的列上创建索引,因为索引已经排序,其指定的范围是连续的;③在经常使用WHERE子旬中的列上面创建索引,加快条件的判断速度。 索引不适合使用的条件:①对于那些在查询中很少使用或者参考的列不应该创建索引;②对于那些只有很少数据值的列也不应该创建索引;③经常进行更新的列不适宜创建索引。
5[单选题] 设在SQL Server 2008中,用户ul在DBl数据库中创建了#Temp表。下列关于#Temp表的说法中,正确的是( )。
A.只有在创建#Temp表的连接中才可以查询#Temp表数据
B.在所有用户U1发起的连接中,都可以查询#Temp表数据
C.在创建#Temp表的连接未断开时,DB1数据库的所有用户都可以查询#Temp表数据
D.在创建#Temp表的连接断开时,DB1数据库的所有用户仍可以查询#Temp表数据
参考答案:A
参考解析:在SQL Server 2008中,只有创建某个临时表的连接中才能查询当前临时表的数据,并当ul创建的该表的连接还未断开时,才能访问这个表的数据。
6[单选题] 在SQL Server 2008中,常常会发生数据库数据过大的情况,此时则需要对表进行处理,通常可采用人工分割表的方法优化性能。下列有关分割表的说法,错误的是( )。
A.水平分割后,得到的子表结构相同
B.水平分割后,查询表中所有数据时需要使用JOIN操作
C.垂直分割后,所有表中均需保留原有表的主码
D.当查询表中所有数据时,使用分割表方法会增加查询表达式的复杂度
参考答案:B
参考解析:分割表增加了维护数据完整性的代价。分割表分为水平分割表和垂直分割表两种。水平分割表:一种是当多个过程频繁访问数据表的不同行时,水平分割表,并消除新表中的冗余数据列;另一种是当主要过程要重复访问部分行时,最好将被重复访问的这些行单独形成子集表(冗余储存),这在不考虑磁盘空间开销时显得十分重要,但在分割表以后,增加了维护难度,要用触发器立即更新、或用存储过程及应用代码批量更新,这也会增加额外的磁盘I/O开销。垂直分割表(不破坏第三范式):一种是当多个过程频繁访问表的不同列时,可将表垂直分成几个表,减少磁盘I/O(每行的数据列少,每页存的数据行就多,相应占用的页就少),更新时不必考虑锁,没有冗余数据。缺点是在插入或删除数据时要考虑数据的完整性,用存储过程维护。另一种是当主要过程反复访问部分列时,最好将这部分被频繁访问的列数据单独存为一个子集表(冗余储存),这在不考虑磁盘空间开销时显得十分重要,但因此增加了重叠列的维护难度,要用触发器立即更新、或用存储过程及应用代码批量更新,这也会增加额外的磁盘I/O开销。垂直分割表可以达到最大化利用Cache的目的。水平分割后,查询数据需要使用UNION操作。垂直分割后,查询数据需要JOIN操作。
7[单选题] 设有关系模式R(A,B,C,D.,其函数依赖集为F={A->D,B->D,C->D}。如果将R分解为R1(A,B,C.和R2(C,D),则该分解是( )。
A.同时保持函数依赖和无损连接的分解
B.保持函数依赖但不保持无损连接的分解
C.保持无损连接但不保持函数依赖的分解
D.既不保持函数依赖也不保持无损连接的分解
参考答案:C
参考解析:对模式进行分解时,既要保证分解具有“无损连接性”,又要保证分解“保持函数依赖”。所谓“无损连接”指分解的若干连接重组时可以精确恢复到原来的数据表,数据记录既没有增加也没有减少。“保持函数依赖”是指原关系模式含有的属性之间的隐含关系在分解后不能丢失。本题由所给的F可以看出A,B,C为关系中的主键,D为非主属性,D依赖于A,B,C分解可恢复出原关系,但其中隐含的D对A、B的依赖却丢失了。
8[单选题] 查询处理器和存储管理器是数据库管理系统中的核心模块。下列关于查询处理器和存储管理器的说法,错误的是( )。
A.查询处理器中的DML编译器会对用户提交的DML语句进行优化,并将其转换成能够执行的底层数据库操作指令
B.存储管理器中的查询执行引擎会根据编译器产生的指令完成具体数据库数据访问功能
C.存储管理器中的缓冲区管理器负责将从磁盘读出的数据块放人内存缓冲区,同时也负责对缓冲区中的数据块进行维护
D.查询处理器中的DDL编译器编译或解释用户提交的DDL语句,并将生成的元数据存储在数据库的数据字典中
参考答案:B
参考解析:查询处理器中最主要的模块是查询编译器和查询执行器,负责DML语句解析和执行,因此B项中所阐述的不是存储管理器的功能,应该是查询处理器的功能。
9[单选题] 某公司计划开发一套生产管理系统,在开发前需对数据库产品进行选型工作。下列有关数据库产品选型的说法,错误的是( )。
A.由于关系数据库均采用SQL语句对数据库中数据进行维护,因此数据库产品选定后如需进行更换,应用程序无需修改
B.在选型过程中需要考虑应用系统的可用性、可靠性和连续性要求
C.在选型过程中需要考虑数据库管理系统所支持的操作系统平台,例如SQL Server数据库管理系统只支持在Windows操作系统上运行
D.部分数据库管理系统在大数据量和大并发情况下可能出现速度变慢、死锁等问题,因此在选型过程中应充分考虑数据量和性能需求
参考答案:A
参考解析:数据库选用中该注意考虑应用系统的可用性、可靠性和连续性要求、数据库环境,如操作系统要求等。在存在大数据的情况下,还应该考虑到数据库对大数据的处理能力。虽然关系数据库均采用比较统一的SQL语句对数据库中的数据进行维护,但是不同的数据库产品提供不同的应用程序接口,因此在更换数据库产品后,一般原有的应用程序和数据库的接口会失效,需要重新修改应用程序。
10[单选题] 关系模型是数据库系统最常用的一种数据模型。下列关于关系模型的说法,错误的是( )。
A.关系模型中的关系是一个二维表,表中的一行对应关系中的一个元组
B.按照一定的规则可以将ER模型转换为关系模型中的关系模式
C.关系模型是建立在集合论的基础上的,关系模型中数据存取对用户是透明的
D.关系模型中的关系模式描述关系的动态结构,其内容随用户对数据库的操作而变化
参考答案:D
参考解析:关系模式描述关系的静态结构,它是静态、稳定的,而关系是动态、随用户对数据库的操作而变化的。考生要区分开来关系模式与关系。
11[单选题] 数据库物理设计阶段是根据数据库逻辑设计的结果设计合适的数据库物理结构。下列关于数据库物理设计的说法,错误的是( )。
A.物理设计着眼于数据库底层的物理存储与存取,与操作系统和硬件环境及数据库管理系统密切相关
B.物理设计时需要合理安排不同的存储介质,索引文件一般存储在高速磁盘中,日志文件可以考虑存储在磁带中
C.物理设计过程中需要考虑设置合理的数据库管理系统参数和操作系统相关参数
D.物理设计过程中需要考虑RAID级别、操作系统的文件管理机制、数据库管理系统支持的索引类型
参考答案:B
参考解析:为了提高系统的性能,应该根据应用情况将数据的易变部分和稳定部分、经常存取部分和存取频率较低的部分分开存放,较常用的放在高速读写的磁盘上,但并没有说索引一定要在高速磁盘,日志一定要在低速磁带,要根据访问频率决定。
12[单选题] 从功能上讲,数据库应用系统设计包括下列四个层次,其中包括构件设计的是( )。
A.表示层
B.业务逻辑层
C.数据访问层
D.数据持久层
参考答案:B
参考解析:从功能上讲,数据库应用系统设计包括下列四个层次:①表示层,位于最外层,离用户最近,用于显示数据和接受用户输入的数据;②业务逻辑层,表示层和数据访问层之间通信的桥梁,主要负责数据的传递和处理,例如数据有效性的检验、业务逻辑描述相关功能。 业务逻辑层概要设计包括:结构、行为、数据接口、故障处理、安全设计、系统维护与保障等方面的内容。③数据访问层,主要实现对数据的保存和读取操作;④数据持久层。由上述可知,业务逻辑层的主要任务是梳理DBAS的各项业务活动,将其表示为各种系统构件(如类、模块、组件等),因此构件设计属于业务逻辑层。
13[单选题] 在数据库应用系统生命周期中,当逻辑设计阶段完成后进入到物理设计阶段。下列不属于物理设计阶段活动的是( )。
A.确定关系表的文件组织形式
B.进行关系规范化设计
C.创建必要的索引
D.设置存储分配参数
参考答案:B
参考解析:数据库物理设计阶段活动包括:①数据库逻辑模式;②选择或配置基本关系表的文件组织形式,为基本关系表设计数据存取方法或存取路径;③数据分布设计;④安全模式设计;⑤确定系统配置;⑥物理模式评估。
14[单选题] 用UML建立业务模型是理解企业业务的第一步,业务人员扮演业务中的角色及其交互方式,例如航空公司的售票员是业务员,电话售票员也是业务员,它们直接的关系是( )。
A.关联关系
B.依赖关系
C.聚集关系
D.概括关系
参考答案:D
参考解析:在UML类图中的概括关系也称为泛化关系,描述了一般事物与该事物中的特殊种类之间的关系,也就是父类与子类之间的关系。本题中航空公司的售票员和电话售票员都属于业务人员的子类,因此属于概括关系。
15[单选题] 设有关系模式R(A,B,C,D),存在函数依赖集:{A→B,C→D},则R最高可属于( )。
A.1NF
B.2NF
C.3NF
D.BCNF
参考答案:A
参考解析:如果关系模式R中不包含多值属性,则R满足第一范式,简称1NF,记作R
16[单选题] 关于优化查询说法正确的是( )。
A.避免或简化排序的目的是实现查询优化
B.在保证数据库一致性的前提下,将频繁操作的多个可以分割的处理过程放在一个存储过程中,这样可以大大提高系统的响应速度
C.使用临时表会占用较多的系统资源,尤其对于大规模并发量的情况下,很容易使得系统资源耗尽而崩溃
D.相关子查询的使用可以加速查询
参考答案:A
参考解析:在保证数据库一致性的前提下,将频繁操作的多个可以分割的处理过程放在多个存储过程中,这样可以大大提高系统的响应速度。使用游标会占用较多的系统资源,尤其对于大规模并发量的情况下,很容易使得系统资源耗尽而崩溃,而使用临时表能够加速查询。相关子查询的不可以加速查询。
每题2分,共16分
17[单选题] 某大型超市的数据库应用系统中,设有下列数据:
Ⅰ 商品清单Ⅱ 商品销售细节数据
ⅡI DBMS中的数据字典Ⅳ 数据库结构说明文档
V 前端应用程序表中数据项的定义及说明文档
Ⅵ 商品分类销售汇总数据
以上数据中,一般不属于元数据的是( )。
A.仅Ⅰ、Ⅲ和Ⅵ
B.仅Ⅱ、V和Ⅵ
C.仅Ⅰ、Ⅱ和Ⅵ
D.仅Ⅱ、Ⅳ和V
参考答案:C
参考解析:元数据被定义为描述数据及其环境的数据,是关于数据的数据。元数据用于描述数据仓库内数据的结构和建立方法,可将其按用途的不同分为技术元数据和业务元数据。一般来说,它有两个主要的用途:首先能够提供基于用户的信息,其次能支持系统对数据的管理和维护。在传统的数据库中,元数据描述了数据库中的各个对象,如数据库中数据字典就是一种元数据,在关系数据库中,这种描述就是对数据库、表、列等对象的定义。DBM数据字典、数据库结构证明文档、前端应用程序表中数据库的定义及说明文档都是元数据。而Ⅰ、Ⅱ和Ⅵ都是提供了基于用户数据的信息,与元数据的定义不符,因此Ⅰ、Ⅱ、Ⅵ不是元数据。
18[单选题] 在分布式数据库应用系统中,对全局关系进行分片设计时,下列说法正确的是( )。
A.对于一个全局关系中的任意数据,不允许其不属于任何一个片段,但允许某些数据同时属于不同的片段
B.对于一个全局关系中的任意数据,可以允许其不属于任何一个片段,也允许某些数据同时属于不同的片段
C.对于一个全局关系中的任意数据,不允许其不属于任何一个片段,也不允许某些数据同时属于不同的片段
D.对于一个全局关系中的任意数据,可以允许其不属于任何一个片段,也不允许某些数据同时属于不同的片段
参考答案:C
参考解析:分布式数据库采用数据分片对数据进行管理,分片有以下三个原则:①完整性原则,即全局关系的所有数据项必须包含在某个片段中,否则将导致数据库不完整,造成某些片段数据丢失;②重构性原则,即所有片段必须能够还原全局关系;③不相交原则(对垂直分片的主键除外),对于一个全局关系,要保证数据不丢失,则必须要属于某个片段,即不允许不属于任何一个片段,也不允许一个全局关系的某些数据既属于该全局关系的某些片断又属于该全局关系的另一个片断(垂直关系中的码属性除外)。
19[单选题] 给定如下三个关系表:
销售明细表(商品标识,销售时间,单价,数量,金额)
日销售表(商品标识,销售日,总数量,总金额)
月销售额(商品标识,销售月份,总数量,总金额)
下列说法正确的是( )。
A.销售明细表的数据粒度最大,数据量最大
B.日销售表的数据粒度最大,数据量最小
C.月销售表的数据粒度最大,数据量最小
D.月销售表的数据粒度最小,数据量最小
参考答案:C
参考解析:数据粒度划分标准可以将数据仓库中的数据划分为详细数据、轻度总结、高度总结三级或更多级。确立粒度的原则:细化程度越高,粒度越小;细化程度越低,粒度越大,综合程度越高。如果数据仓库不保存低粒度的数据而只有粗粒度的数据,则需要存储的数据量就较少。所以A、D选项错。B选项中已是最小粒度,所以没有最大和最小之分。C选项中月销售表可以分成粒度更小的日销售表。
20[单选题] 设有某通信公司的业务支撑系统,该系统中存在如下各种数据或文档
Ⅰ 通话详单
Ⅱ 短信数据
Ⅲ 系统ER图及说明文档
Ⅳ 物理平台的数据字典及其说明文档
V 用户名单
Ⅵ 用户每月费用支出分类汇总数据
Ⅶ 用户缴费记录
以上各类数据,属于元数据的是( )。
A.仅Ⅰ、Ⅱ和V
B.仅Ⅲ、Ⅵ、V和Ⅶ
C.仅Ⅳ、Ⅵ和Ⅶ
D.仅Ⅲ和Ⅳ
参考答案:D
参考解析:元数据是关于数据的数据,或者叫做描述数据的数据,它描述了数据的结构、内容、链和索引等项的内容。题干中只有Ⅲ和Ⅳ符合定义。其余的内容都是用户数据。故答案为D项。
21[单选题] 在SQL Server 2008中,master是一个非常重要的系统数据库,如果master损坏将会对系统造成严重后果,因此系统管理员应该对master进行备份。SQL Server 2008对数据库提供的备份有( )。
Ⅰ 完全备份Ⅱ 差异备份Ⅲ 日志备份
A.仅Ⅰ
B.仅Ⅰ和Ⅱ
C.仅Ⅰ和Ⅲ
D.全部
参考答案:B
参考解析:数据库备份分为以下两种:①完全备份,这可能是大多数人常用的方式,它不仅可以备份整个数据库,包含用户表、系统表、索引、视图和存储过程等所有数据库对象,而且备份数据库文件和日志文件,但它需要花费更多的时间和空间,所以一般推荐一周做一次;②差异备份,差异备份是备份自上一次完全备份之后有变化的数据文件、日志文件以及数据库中其他被修改的内容等。它比最初的完全备份小,因为它只包含自上次完全备份以来所改变的数据。它的优点是存储和恢复速度快,推荐每天做一次差异备份。
22[单选题] 下列关于数据库实施、运行和维护的说法中,最恰当的是( )。
A.对于数据量超大的数据库应用系统,最好在刚刚建立好数据库且未导入任何数据前编写调试应用程序
B.对于数据量极大的中大型系统,不需要等待所有的数据都入库后才开始试运行,可以先装载少量的数据,等到试运行的结果符合设计要求后,再批量装入全部数据
C.数据库的重构不仅需要在原来的数据库设计的基础上做适当的扩充或修改,也最好考虑重新设计相应的应用程序
D.索引的根本目的是为了提高查询效率,但当数据量庞大时也会占用大量的磁盘空间。由于查询缓存的存在,因此不需要为经常在查询中作为条件的列建立索引
参考答案:B
参考解析:A选项中在调试应用程序时,如果数据入库尚未完成,数据库没有数据,应用程序的调试将会出现一定的困难;C选项中数据库重构应该尽量避免应用程序的改动;D选项中经常查询的列应该建立索引。
23[单选题] 设有商场数据库应用系统,在系统生命周期中,可能会遇到下列故障:
Ⅰ 某DBA违反规定使用数据库服务器上公网后,服务器操作系统遭到攻击,导致系统死机后不得不重启
Ⅱ 与几台POS机相连的交换机突然损坏,导致这几台POS机无法提供服务
Ⅲ 系统运行过程中突然停电,恢复供电后操作系统重新启动
Ⅳ 某员工蓄意删除部分商品信息,导致系统无法正常销售这些商品
V 因水灾导致数据库服务器被淹后硬盘损毁,致使数据无法恢复
VI DBA误操作强行关闭正在运行的数据库服务器
以上故障,不属于系统故障的是( )。
A.仅Ⅳ
B.仅Ⅱ、Ⅲ和Ⅵ
C.仅Ⅱ、Ⅳ和V
D.仅Ⅰ、Ⅱ和V
参考答案:C
参考解析:Ⅱ和V是介质故障,又称为硬故障,是指物理设备的损坏导致数据库无法运行,而Ⅳ是人为攻击破坏。系统故障是指造成系统停止运转的任何事件,使得系统要重新启动。所以选择C选项。
24[单选题] 分布式数据库系统的“分片透明性”位于( )。
A.全局模式与全局概念模式之间
B.分片模式与分配模式之间
C.全局概念模式与分片模式之间
D.分配模式与局部概念模式之间
参考答案:C
参考解析:分布式数据库系统按不同层次提供的分布透明性有:分片透明性、位置透明性、局部数据模型透明性。其中分片透明性是分布式数据库中最高层次的分布透明性,位于全局概念模型和分片模型之间。用户编写程序只须对全局关系进行操作,不必考虑数据的分片及存储场地。当分片模式改变时,只须改变全局概念到分片模式的映象,而不会影响全局概念模式和应用程序,即实现了分片透明性。





微信搜索"考试吧"了解更多考试资讯、下载备考资料
二、应用题(每题2分,共38.5分)
25[简答题]
如果数据文件中数据记录排列顺序与索引文件中索引项的排列顺序一致,则此种索引被称为【1】索引。
参考解析:聚集 【解析】建立索引是加快查询速度的有效手段。用户可以根据应用环境的需要,在基本表上建立一个或多个索引,以提供多种存取路径,加快查找速度。聚集索引是指索引项的顺序与表中记录的物理顺序一致的索引组织。
26[简答题]
关系数据库中的视图提供了【2】数据独立性。
参考解析:逻辑 【解析】视图是从一个或几个基本表中导出的虚表。数据库中只存放视图的定义,而不存放视图对应的数据,这些数据仍存放在原表中,并且视图在一定程度上能提供数据的逻辑独立性。比如重构数据库时,将一个基本表垂直地分成多个基本表,尽管数据库的逻辑结构改变了,但应用程序不必修改,因为新建立的视图定义为用户原来的关系,使用户的外模式保持不变,用户的应用程序通过视图仍然能够查找数据。
27[简答题]
在UML中,用例模型由用例、系统和【3】三部分组成。
参考解析:角色 【解析】用例图是外部用户(参与者)所能观察到的系统功能的模型图,显示系统中的用例与角色及其相互关系,主要用于对系统、子系统或类的功能行为进行建模。用例模型由用例、角色和系统三部分组成。
28[简答题]
设有学生表(学号,姓名,所在系名)和选课表(学号,课程号,成绩)。现要建立统计每个系选课人数的视图。请补全下列语句:
CREATE VIEW V1(系名,人数)AS
SELECT所在系名,【4】
FROM选课表JOIN学生表ON选课表.学号=学生表.学号
【5】
参考解析:第一空:COUNT(DISTINCT选课表.学号) 第二空:GROUP BY所在系名
【解析】由于要统计选课人数所以要用到聚类函数COUNT(DISTINCTIALL<列名>),表示对某列的值的计数,如果指定DISTINCT短语,则表示在计算时要取消指定列中的重复值。如果不指定DISTINCT短语或指定ALL短语,则表示保留重复值。由于是对不同系中的学生的学号统计,所以用GROUP BY子句将查询结果按某一列或多列的值分组,值相等的为一组。通过对组内不同学号的统计从而统计出各个系的选课人数。
29[简答题]
设有课程表(课程号,课程名,学分,先修课程号),已知某应用程序需要列出“数据库原理”课程的一门先修课程,查询结果要求输出(课程名,学分,先修课名称,先修课学分),可以用【6】连接操作在一个查询中实现此功能。
参考解析:自 【解析】自连接是SQL语句中经常要用的连接方式,使用自连接可以将自身表的一个镜像当作另一张表来对待,从而能够得到一些特殊的数据。简而言之,自连接的本意就是将一张表看成多张表来做连接。本题的SQL语句为:
select课程表.课程名,课程表.学分,先修表.课程名,先修表.学分from emp课程表,emp先修表where课程表.课程名=’数据库原理’and课程表.先修课程号=先修表.课程号。
30[简答题]
在SQL Server 2008的某用户数据库中,设有T表,现要在T表的c1列和c2列上建立一个复合唯一聚集索引,其中c1列值重复率为20%,c2列为10%。请补全下列语句建立一个性能最优的索引:
CREATE UNIQUE CLUSTERED INDEX Idxl ON T(【7】)
参考解析:c2,c1 【解析】聚簇索引是指索引项的顺序与表中记录的物理顺序一致的索引组织。用户可以在最经常查询的列上建立聚簇索引以提高查询效率。UNIQUE表示要建立的每一个索引值对应唯一的数据记录,先对c2表索引然后对c1表索引,可以使索引的性能最优。
31[简答题]
使用约束可以保证数据库中数据的正确性,其中【8】约束允许出现空值但不允许出现重复值。
参考解析:UNIQUE 【解析】数据表中对于某一列数据的唯一性约束有UNIQUE约束和PRIMARY约束,但两者之间有区别。PRIMARY KEY约束多为强调主键不可出现相同元素,但想要强制一列或多列组合(不是主键)的唯一性时应使用UNIQUE约束而不是PRIMARY KEY约束。而且,U.NIQUE约束允许出现空值,PRIMARY KEY约束不允许出现空值。
32[简答题]
数据仓库是一个面向主题、集成的、时变的、非易失的数据集合,支持管理部门的决策过程,数据仓库通过数据转移从多个数据源提取数据,为了解决不同数据源格式上的不统一,需要进行的数据操作是【9】。
参考解析:转换 【解析】数据仓库的数据来自多种数据源。不同的数据源可能由不同的平台开发,使用不同的数据库管理系统,数据格式也可能不同。源数据在被装载到数据仓库之前,需要进行一定的数据转换。数据转换的主要任务是对数据粒度以及不一致的数据进行转换。
33[简答题]
设有关系模式W(C,P,S,G,T,R),其中各属性的含义是:C为课程,P为老师,S为学生,G为成绩,T为时问,R为教室,根据定义有如下的函数依赖集:
F={C→G,(S,C.→G,(T,R)→C,(T,P)→R,(T,S)→R}
W的规范程度可高达【10】。若将关系模式w分解为3个关系模式
W1(C,P),W2(S,C,G),W3(S,T,R,C.
则W1的规范化程度最高可达到【11】,W2的规范化程度最高可达到【12】,W3的规范化程度最高可到达【13】。
参考解析:第一空:1NF 第二空:4NF
第三空:1NF
第四空:3NF
【解析】W1中存在着非主属性对码的部分依赖,所以它只能达到1NF。
34[简答题]
设某数据库中有旅客表A(旅客编号,城市)和旅客表B(旅客编号,城市),现将所有旅客的数据存储这两张表中。请补全如下查询语句,使得该查询语句能查询所有旅客所在的全部的不重复的城市。
SELECT城市FROM旅客表A
【14】
SELECT城市FROM旅客表B
参考解析:UNION 【解析】SQL中的集合操作符IN、EXCEPT、INTERSECT和UNION的用法分别为:①IN,确定给定的值是否与子查询或列表中的值相匹配,使其得以选择与列表中的任意一个值匹配的行;②EXCEPT,指在第一个集合中存在、但是不存在于第二个集合中的数据;③INTERSECT,是指在两个集合中都存在的数据;④UNION,操作符用于合并两个或多个SELECT语句的结果集,对于UNION操作符,请注意,UNION内部的SELECT语句必须拥有相同数量的列,列也必须拥有相似的数据类型。SQL的UNION子句语法是合并两个或多个查询语句的结果集,并且自动删除合并后结果集中的重复记录。
35[简答题]
删除用户自定义的函数使用【15】语句来实现。
参考解析:DROP FUNCTION 【解析】删除用户定义的函数的T—SQL语法的格式为:DROP FUNCTION{[schema_name.1function_name}[,…n]。





微信搜索"考试吧"了解更多考试资讯、下载备考资料
三、设计与应用题(共30分)
36[简答题]
设有图书管理数据库,包含三张表:
图书明细表(图书编号,图书类别,图书名称,作者,出版社,出版日期,定价);
读者表(借书证号,姓名,系别,办证日期);
借出信息表(借出编号,借书证号,图书编号,借书日期);
完成下列操作:
定义一个多语句表值函数,用于查询学生借书情况,只需提供参数:借书证号,就可以通过调用函数返回此学生的借书情况,若有借书籍,则返回所借书籍的编号、书籍名称、定价和借书日期;若没有在借书籍,则返回记录为空。设函数名为:f_BorrowBook(@jszh char(20))。
参考解析:【解题思路】

采用三表联合查询,通过传人的借书证号查出借出信息表中的图书编号,然后查出图书明细表的信息。
SELECT图书明细表.图书编号,图书名称,定价,借出信息表.借书日期FROM借出信息表,图书明细表
WHERE借出信息表.图书编号=图书明细表.图书编号AND借出信息表,借书证号=@jszh
RETURN
END
37[简答题]
设有高校选课系统,需要对学校的系信息、教师信息、课程信息、学生信息、学生选课信息进行管理。已知系(DEPT)信息包括系编号(DeptNO)、系名称(DeptName);教师(Teacher)信息包括教师号(TNO)、教师名(Tname);课程(Course)信息包括课程号(CNO)、课程名(CName)、课程学分(Credit);学生(Student)信息包括学号(SNO)、学生姓名(Sname)、学生性别(Sex)。
选课系统的管理规则如下:
Ⅰ 一个系可聘用多名教师,一个教师只受聘于一个系;
Ⅱ 一个系可有多名学生,一个学生只属于一个系;
Ⅲ 一名教师可讲授多门课程,一门课程可由多名教师讲授;
Ⅳ 一名学生可选修多门课程,一门课程可被多名学生选修;
V 学生选修完课程后,可获得相应课程的成绩。
针对以上描述,完成下列设计内容:
(1)构建选修课系统的ER图。(要求图中的实体集名用试卷中给出的英文名,联系所关联的实体集名的首字母,字母间用“—”或“_”连接,大小写不限)。
(2)根据所构建的ER图,设计满足3NF的关系模式,并标出每个关系模式的主码和外码。(要求关系模式名同实体集名或联系名,属性名用试卷中给出的英文名,大小写不限)
参考解析:【解题思路】 (1)ER图的画法
建立相应的ER图的过程如下:
第一,确定实体类型。本题有四个实体类型,即Teacher实体,Course实体,Student实体和DEPT实体。
第二,确定联系类型。Teacher实体与Course实体之间是多对多关系,即T-C关系,Student实体与Course实体之间是多对多关系,即S-C关系。DEPT实体与Teacher实体之间是一对多关系,即D-T关系。DEPT实体与Student实体之间是一对多关系,即D-S关系。
第三,把实体类型和联系类型组合成ER图。
第四,确定实体类型和联系类型的属性。
Teacher实体集属性:教师号、教师名
Course实体集属性:课程号、课程名、课程学分
Student实体集属性:学号、学生姓名、学生性别
DEPT实体集属性:系编号、系名称
(2)ER模型转换为关系模式的规则
①把ER模型中的每一个实体集转换为同名的关系,实体集的属性就是关系的属性,实体集的码就是关系的码。
②把ER模型中的每一个联系转换成一个关系,与该联系相连的各实体集的码以及联系的属性转换为关系的属性。关系的码根据下列情况确定。
若联系为1:1,则每个实体集码均是该关系的候选码。
若联系为1:n,则关系的码为n端实体集的码。
若联系为m:n,则为各实体集码的组合或其中一部分实体集码的组合。
③合并具有相同码的关系。根据规则,把一个ER模型转换为关系模式,一般经历下面两个步骤:
第一,标识ER模型中的联系。
第二,依次转换与每个联系相关联的实体集及联系。
【参考答案】
ER图如下所示:


38[简答题]
某书店采用了SQL Server 2008数据库管理系统,该书店有一个需求,需要统计指定年份中每一本书的销售总额,例如:查询2012年所有书的销售总额。
已知图书结构如下:
图书表(书号BOOK_ID,书名BOOK_NAME,单价BOOK_PRICE)
销售表(书号BOOK_ID,销售时间SALE_TIME,销售数量SALE_NUM)。
假设单价和销售数量均为int型,书号和书名均为varchar(50)类型,销售时问为datetime型。请给出满足如下要求的多语句表值函数,该函数统计指定年份中每本书的销售总额。
设函数名为:BOOK_PROFIT(@year int),函数的返回结果格式如下:
书号销售总额
B00160000
A00450000
参考解析:【解题思路】 采用JOIN联合查询,先用WHERE条件查出符合销售时间=@year的记录,再将找出的记录和图书表合并,并采用单价*销售数量计算出联合查询的表数据,最后根据GROUP BY统计每种书的销售价格总和。
【参考答案】







微信搜索"考试吧"了解更多考试资讯、下载备考资料