2026年计算机等级考试三级数据库训练试题及答案_第1页
2026年计算机等级考试三级数据库训练试题及答案_第2页
2026年计算机等级考试三级数据库训练试题及答案_第3页
2026年计算机等级考试三级数据库训练试题及答案_第4页
2026年计算机等级考试三级数据库训练试题及答案_第5页
已阅读5页,还剩24页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2026年计算机等级考试三级数据库训练试题及答案一、单选题(每题1分,共30分)1.在关系数据库中,若属性集X→Y,且对X的任何真子集X′都有X′↛Y,则称X→Y为A.平凡函数依赖B.完全函数依赖C.部分函数依赖D.传递函数依赖答案:B解析:完全函数依赖强调“最小性”,即决定因素X的任何真子集都不能决定Y,符合定义。2.设关系R(A,B,C,D)满足函数依赖集F={AB→C,C→D,D→A},则R的候选码为A.ABB.BCC.BDD.ABC答案:A解析:计算属性闭包,(AB)+={A,B,C,D},且AB最小,故AB为候选码。3.在SQL标准中,用于定义“列值唯一且非空”的约束是A.PRIMARYKEYB.UNIQUEC.CHECKD.NOTNULL答案:A解析:PRIMARYKEY隐含NOTNULL与UNIQUE双重语义,且一张表只能有一个。4.下列关于B+树的叙述,错误的是A.叶节点通过指针顺序链接B.非叶节点仅起索引作用C.叶节点存储实际数据记录D.所有叶节点深度相同答案:C解析:B+树叶节点存储的是<key,recordpointer>,而非整条记录;记录本身存放在数据文件。5.两段锁协议(2PL)能保证A.可串行化且避免死锁B.可串行化但可能死锁C.避免级联回滚且避免死锁D.避免脏读且避免不可重复读答案:B解析:2PL通过加锁顺序保证可串行化,但不限制加锁顺序,故仍可能出现死锁。6.在分布式数据库中,若采用“主副本更新+多数派读”策略,则系统满足A.强一致性B.最终一致性C.因果一致性D.单调读一致性答案:A解析:多数派读写交集保证每次读都能读到最新写入,实现线性一致性即强一致。7.设事务T1、T2的调度为:R1(A),W2(A),R1(A),W1(A),则该调度A.冲突可串行化B.视图可串行化C.不可串行化D.可恢复答案:C解析:存在读写、写读冲突且无法通过交换非冲突操作得到串行调度,故不可串行化。8.在MySQLInnoDB中,实现MVCC的核心数据结构是A.UndoLogB.RedoLogC.BufferPoolD.InsertBuffer答案:A解析:UndoLog保存旧版本数据,使不同事务看到不同快照,实现非阻塞读。9.若关系模式R(学号,课号,成绩,教师号,教师职称)存在“学号,课号→成绩;教师号→教师职称;课号→教师号”,则R最高属于A.1NFB.2NFC.3NFD.BCNF答案:B解析:存在非主属性“教师职称”对码的部分依赖(教师号→教师职称,而教师号是码的一部分),故仅达2NF。10.在PostgreSQL中,对JSONB类型建立GIN索引后,下列操作能高效利用索引的是A.@>操作符B.>操作符C.jsonb_each函数D.jsonb_array_elements函数答案:A解析:@>为包含操作符,GIN索引内置类支持,可直接利用索引过滤。11.数据库系统采用“先写日志后写数据”规则,主要是为了A.提高并发度B.降低磁盘I/OC.保证崩溃恢复D.避免死锁答案:C解析:WAL保证在宕机后能通过日志重做或撤销,使数据回到一致状态。12.在Oracle中,段(segment)对应以下哪种逻辑结构A.表空间B.区C.数据块D.表答案:D解析:段是逻辑对象(表、索引)在表空间内分配的存储单元,由多个区组成。13.设关系R和S的元组数分别为1000和2000,做自然连接后结果可能的最大元组数为A.1000B.2000C.2000000D.无法确定答案:C解析:最大情况为R与S的公共属性值全部相同,产生笛卡尔积规模1000×2000。14.在数据库安全模型中,“仅当用户安全级≥数据安全级时才可写”属于A.BellLaPadula模型B.Biba模型C.ClarkWilson模型D.强制访问控制答案:B解析:Biba完整性模型规定“不下写”,防止低完整性数据污染高完整性数据。15.当执行“SELECTFROMtWHEREcLIKE'%abc'”时,若c列已建B+树索引,则A.一定走索引B.一定全表扫描C.可能走索引范围扫描D.取决于统计信息答案:B解析:前缀通配符%导致无法利用B+树有序性,只能全表扫描。16.在分布式事务2PC中,若协调者在“预提交”阶段后宕机,参与者应A.立即提交B.立即回滚C.阻塞等待D.进入就绪状态并投票答案:C解析:参与者已投赞成票,但未收到全局提交,必须阻塞等待恢复,否则可能破坏原子性。17.关于列式存储,下列说法正确的是A.适合高并发小事务更新B.压缩比通常低于行式C.对聚合查询友好D.点查单行速度优于行式答案:C解析:列存将同列数据连续存放,压缩率高,且仅需读取需要的列,聚合操作I/O少。18.在SQLServer中,若要查看某索引的碎片率,应使用系统函数A.sys.dm_db_index_usage_statsB.sys.dm_db_index_physical_statsC.sys.indexesD.sys.stats答案:B解析:physical_stats返回索引叶级碎片、页密度等空间信息。19.当关系模式存在多值依赖“课程→→教材”时,应分解到A.2NFB.3NFC.4NFD.5NF答案:C解析:4NF要求消除非平凡多值依赖,需将课程与教材独立成表。20.在MongoDB副本集中,发生主节点宕机后,剩余节点需A.立即降级为SECONDARYB.进行选举产生新主C.回滚最近写操作D.等待人工干预答案:B解析:副本集基于Raftlike协议自动选举,多数派存活即可选主。21.若数据库出现“ORA01555:snapshottooold”,其根本原因是A.Undo表空间不足B.Redo日志切换过快C.数据块损坏D.索引失效答案:A解析:长时间查询需要的旧版本数据被覆盖,Undo空间不足或保留期过短导致。22.在PostgreSQL中,对表做TRUNCATE操作会A.触发行级DELETE触发器B.记录大量WAL日志C.立即释放磁盘文件D.可被回滚答案:D解析:TRUNCATE是事务性的,在事务块内可回滚,但默认不触发行触发器。23.在数据库设计中,若将“订单明细”表的主键设为“订单号+商品号”,则该主键属于A.简单键B.复合键C.代理键D.外键答案:B解析:由多列联合组成,称为复合键或组合键。24.在Redis中,执行“WATCHkey”后,若key被其他客户端修改,则当前事务A.自动重试B.继续执行C.执行时丢弃D.执行时回滚答案:C解析:WATCH实现乐观锁,key变动后EXEC会返回nil,事务被丢弃。25.关于HiveSQL与关系型SQL差异,描述错误的是A.Hive支持事务的UPDATE/DELETE从2.0开始B.Hive默认执行引擎为MapReduceC.Hive索引机制与RDBMS相同D.Hive适合批处理而非OLTP答案:C解析:Hive索引(已废弃)采用紧凑索引表,与RDBMS的B+树索引机制完全不同。26.在MySQL中,执行计划出现“Usingfilesort”表示A.使用索引排序B.使用临时文件排序C.使用内存排序D.使用覆盖索引答案:B解析:无法利用索引顺序,需额外排序步骤,可能落盘。27.若采用“时间戳排序并发控制”,事务T的读时间戳必须A.小于数据项的写时间戳B.大于数据项的读时间戳C.小于系统当前时钟D.大于数据项的写时间戳答案:D解析:读时间戳需大于已提交写的最大时间戳,确保读到最新提交值。28.在数据库重构时,将大表按“年份”拆分为多个表,称为A.垂直分区B.水平分区C.规范化D.反规范化答案:B解析:按行拆分,同构表分散存储,属于水平分区或Sharding。29.在Oracle中,位图索引最适合于A.列基数高且频繁更新B.列基数低且频繁更新C.列基数低且很少更新D.列基数高且很少更新答案:C解析:位图索引对低基数列压缩比高,但行级锁会升级为位图段锁,不适于高并发更新。30.当数据库使用“多版本时间戳”时,不会出现A.脏读B.不可重复读C.幻读D.丢失更新答案:A解析:时间戳机制保证事务读取不大于其启动时间戳的已提交版本,杜绝脏读。二、多选题(每题2分,共20分)31.下列哪些操作会触发MySQLInnoDB的隐式提交A.STARTTRANSACTIONB.ALTERTABLEC.LOCKTABLESD.CREATEINDEX答案:B、C、D解析:DDL与锁表语句均会强制提交当前事务。32.关于数据库范式,下列说法正确的有A.满足BCNF必满足3NFB.满足3NF必满足2NFC.存在传递依赖一定不满足3NFD.满足4NF必消除连接依赖答案:A、B、C解析:4NF要求消除多值依赖,而非连接依赖;连接依赖由5NF处理。33.在分布式系统中,CAP理论指出当网络分区发生时,系统必须在以下哪两项之间权衡A.一致性B.可用性C.分区容错性D.可扩展性答案:A、B解析:分区不可避免,需在一致性与可用性间二选一。34.下列哪些属于PostgreSQL的索引类型A.BtreeB.HashC.GiSTD.Bitmap答案:A、B、C解析:PostgreSQL支持Btree、Hash、GiST、GIN、SPGiST、BRIN,无原生Bitmap索引。35.在SQL调优中,可通过哪些方式避免“全表扫描”A.在WHERE列建立索引B.使用绑定变量C.更新统计信息D.使用hints强制走索引答案:A、C、D解析:绑定变量主要解决硬解析问题,与是否全表扫描无直接因果关系。36.关于Redis持久化,下列正确的有A.RDB是快照持久化B.AOF是日志追加C.RDB恢复速度比AOF慢D.可同时开启RDB与AOF答案:A、B、D解析:RDB为二进制快照,恢复速度通常快于AOF重放,故C错误。37.在数据仓库中,缓慢变化维(SCD)类型包括A.覆盖旧值B.增加新行C.增加新列D.历史表分离答案:A、B、C解析:类型1覆盖,类型2新增行,类型3新增列,类型4为历史表分离。38.下列哪些属于事务的隔离级别A.ReadUncommittedB.ReadCommittedC.SnapshotD.Serializable答案:A、B、D解析:Snapshot是SQLServer特定实现,标准ANSI仅定义四种,缺RepeatableRead。39.在MongoDB中,支持哪些类型的索引A.单字段索引B.复合索引C.文本索引D.位图索引答案:A、B、C解析:MongoDB无位图索引。40.在数据库备份策略中,冷备份特点包括A.需关闭数据库B.备份文件一致性高C.可细粒度恢复单表D.恢复速度快答案:A、B、D解析:冷备份为文件级拷贝,无法直接单表恢复。三、判断题(每题1分,共10分)41.在关系代数中,选择操作可下推到投影之前,总能减少中间结果大小。答案:错解析:若选择列不在投影列中,需先投影才能选择,下推不一定减少大小。42.任何满足3NF的关系模式必然满足BCNF。答案:错解析:3NF允许决定因素不含码,BCNF要求所有决定因素为超码,故3NF⊂BCNF。43.Redis的List结构底层采用quicklist实现。答案:对解析:quicklist为ziplist与双向链表混合结构,兼顾空间与速度。44.在Oracle中,表空间可跨多个数据库实例共享。答案:错解析:表空间属于单个实例,RAC中各实例共享同一物理库,但表空间仍归库所有。45.使用覆盖索引可避免回表操作。答案:对解析:索引叶节点包含查询所需全部列,无需再访问数据页。46.在MySQL中,InnoDB的锁粒度最小可到行级。答案:对解析:InnoDB支持行级锁,通过索引项实现。47.数据仓库的星型模型比雪花模型更节省存储空间。答案:错解析:星型模型维度未规范化,冗余大;雪花模型通过规范化节省空间。48.在PostgreSQL中,可通过表继承实现水平分片。答案:对解析:利用继承+约束排除,实现基于范围的分片。49.数据库的“丢失更新”问题在ReadCommitted隔离级别下即可避免。答案:错解析:需RepeatableRead或更高,或使用乐观锁。50.在Hive中,使用ORC格式比TextFile占用更多磁盘空间。答案:错解析:ORC采用列存+压缩,空间远小于TextFile。四、填空题(每空2分,共20分)51.在关系数据库中,若F={A→B,B→C,C→D},则A的闭包A+为________。答案:{A,B,C,D}解析:依次计算得A→B→C→D。52.在MySQL中,查看当前线程状态的命令是________。答案:SHOWPROCESSLIST53.在Oracle中,系统全局区的英文缩写为________。答案:SGA54.在分布式数据库中,用于解决“脑裂”问题的常见算法是________。答案:Paxos或Raft55.在SQL中,用于计算排名且允许并列的窗口函数是________。答案:RANK()56.在MongoDB中,用于开启分片功能的命令是________。答案:sh.enableSharding(database)57.在Redis中,设置键过期时间的命令是________。答案:EXPIRE58.在PostgreSQL中,实现全文检索的默认配置字典是________。答案:english或simple59.在数据仓库中,用于描述事实表粒度的短语是________。答案:“业务过程+度量+维度”60.在MySQL复制中,用于记录主库二进制日志文件与位置的文件是________。答案:五、简答题(每题10分,共30分)61.描述InnoDB如何通过MVCC解决不可重复读,并指出其UndoLog回收机制。答案:InnoDB为每行增加两个隐藏列:trx_id(事务ID)与roll_pointer(指向UndoLog)。读取时,事务根据启动时的一致性视图(readview)判断行版本可见性:仅当trx_id小于视图最小活跃ID或已在视图提交列表中,才返回该行。UndoLog分为insertundo与updateundo:insertundo在事务提交后立即删除;updateundo需保留至无其他事务需要该旧版本,由后台purge线程定期清理。purge依据系统最老活跃事务视图,回收不再需要的undo页,释放空间。62.说明2PC与3PC的差异,并指出3PC如何避免“阻塞”问题。答案:2PC分准备与提交两阶段:若协调者宕机且参与者收不到全局决定,需阻塞等待。3PC引入预提交阶段,将准备阶段拆为“CanCommit”与“PreCommit”,并设置超时机制:1.CanCommit阶段询问各参与者是否可提交;2.若全部Yes,进入PreCommit,协调者广播预提交并启动超时;3.参与者收到PreCommit后写入undo/redo并ACK;4.协调者收到多数ACK后进入DoCommit。若协调者宕机,参与者等待超时后可根据阶段推断:若已收到PreCommit则提交;若仅收到CanCommit则回滚,无需阻塞等待恢复,从而避免阻塞。63.给出将关系模式R(学号,课号,成绩,教师号,实验室,实验室主任)分解到BCNF的步骤,并说明是否保持函数依赖。已知F={学号,课号→成绩;课号→教师号;教师号→实验室;实验室→实验室主任}。步骤:1.找候选码:(学号,课号)+={所有属性},且最小,故为唯一候选码。2.发现决定因素“课号”不是超码,存在课号→教师号,违反BCNF。3.按课号→教师号分解得:R1(课号,教师号,实验室,实验室主任)R2(学号,课号,成绩)4.在R1中,教师号→实验室,决定因素教师号不是R1超码,继续分解:R11(教师号,实验室,实验室主任)R12(课号,教师号)5.在R11中,实验室→实验室主任,决定因素实验室不是超码,再分解:R111(实验室,实验室主任)R112(教师号,实验室)最终得到BCNF:{R2,R12,R111,R112}。保持函数依赖:原依赖“课号→教师号”保存在R12,“教师号→实验室”保存在R112,“实验室→实验室主任”保存在R111,“学号,课号→成绩”保存在R2,全部保持,故分

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论