2018年武汉轻工大学电气与电子工程学院341农业知识综合三之数据库系统概论考研核心题库
● 摘要
一、选择题
1. 某个数据仓库中保存有商品销售明细数据表T (商品号,数量,价格,时间),其细节数据保存期为2年,每年销售记录约有5000万条。设前端应用需要针对这些数据进行每月重要商品销售情况与趋势分析,可供用户查询或分析的数据时间跨度最长为5年,为了提高这项分析需求的执行效率,下列方案合理且有效的是( )。
A. 按月份为商品明细数据建立分区,并为商品销售明细数据建立索引,每次分析时根据细节数据实时计算生成月粒度级数据,并用于趋势分析
B. 按月份为商品明细数据建立分区,并为商品销售明细数据建立索引,建立视图VI (商品号,日销售总数量,日销售总金额,日期),将VI 作为数据分析源
C. 在商品号属性上为T 建立索引,建立物化视图V2(商品号,日销售总数量,日销售总金额,日期),每天根据T 中新产生的数据对V2进行增长式更新,并将V2作为分析数据源
D. 建立物化视图V3(商品号,月销售总数量,月销售总金额,月份),每天清空V3, 并根据表T 重新计算V3, 并将V3作为分析数据源
【答案】C
【解析】如果每次分析都根据细节数据实时计算,生成月粒度级数据,那么数据量大时效率就会很低。视图是虚表,并不占用存储空间,所以建立视图与提高效率无关。每天清空V3并根据表T 重新计算V3, 将V3作为分析数据源,并不能提高效率。只有C 项方案比较合理有效。
2. 现有关系模式R (学号,姓名,课程代码,课程名,课程成绩),对其进行分解将其规范化到第三范式,下列( )是最正确的规范化结果。
A.R1 (学号,姓名)R2 (课程代码,课程名,课程成绩)
B.R1 (学号,姓名)R2 (课程代码,课程名)R3 (学号,课程代码,课程成绩)
C.R1 (学号,姓名)R2 (学号,课程代码,课程名,课程成绩)
D.R1 (学号,姓名)R2 (课程代码,课程名)R3 (课程代码,课程成绩)
【答案】B
【解析】如果一个关系模式R 属于第一范式,且每个非主属性既不部分依赖于码又不传递依赖于码,则这个关系属于第三范式。同时在对关系进行规范化的过程中,对于关系的分解不是随意而为的,需要考虑新关系与 原关系在数据上的等价、在依赖上的等价,甚至是在数据和依赖上都等价,否则就很可能达不到规范化目的。
A 项中的分解,R1 (学号,姓名)达到3NF 要求,R2 (课程代码,课程名,课程成绩)也
达到3NF 要求, 但是它们与原关系R 在数据上不能等价,在依赖上也不等价,因而不是最正确的规范化结果。
C 项中的分解,R1 (学号,姓名)达到3NF 要求,R2 (学号,课程代码,课程名,课程成绩)中由于存在: 课程代码一课程名,即非码属性对码的部分依赖,因此,该R2只达到1NF 要求,没有达到2NF 要求,当然也 就没有达到3NF 要求。
D 项中的分解,R1 (学号,姓名)达到3NF 要求,R2 (课程代码,课程名),R3 (课程代码,课程成绩) 也都达到3NF 要求,但是它们与原关系R 在数据上不能等价,在依赖上也不等价,因而不是最正确的规范化结果。
只有B 项的分解,R1 (学号,姓名),R2 (课程代码,课程名),R3 (学号,课程代码,课程成绩)都达到 3NF 要求,同时分解后的关系与原关系在数据和依赖上都等价,因而是最正确的规范化结果。
3. 设有两个事务其并发操作如下表所示,下列评价正确的是( )。
表中事务并发操作过程
A. 该操作不存在问题
B. 该操作丢失修改
C. 该操作不能重复读
D. 该操作读“脏”数据
【答案】D
【解析】事务读出数据A 并做了修改,事务读取同一数据,随后由于某种原因被撤消,执行回滚,这时已修改过的数据恢复原值100,读到的数据200就与数据库中的数据不一致,称为“脏”数据。
4. 某跨国公司的业务系统需要提供全球性服务,该业务系统需要24小时x7天在线服务,系统业务繁忙,为了保证业务系统数据库中数据的安全,需要设计与实施数据转储机制,设完成该数
据库每天数据増量的转储需要2小时,在不考虑成本因素的情况下,下列最合理的是( )。
A. 配备高性能数据库服务器,通过事务传送机制实时地将数据库中的任何变化反映到备份环境中
B. 每天划出长度为2小时的时间窗口tw ,在tw 内采用静态转储方法实现每天数据增量的转储
C. 每天划出长度为2小时的时间窗口tw ,在tw 内采用动态转储方法实现每天数据增量的转
储
D. 每周做一次完全转储,每天选择浮动时间段对变化的数据进行转储
【答案】A
【解析】在静态转储过程中系统不能运行其他事务;在动态备份转储过程中,运行转储操作和用户事务并发执行,即允许对数据库进行存取和修改。日志文件用于记录转储期间各事务对数据库的修改活动,保障了数据的有效性。将动态转储的备份副本与日志文件相结合,就可以将数据库恢复到某一时刻的正确状态。
5. 对并发操作若不加以控制,可能会带来( )问题。
A. 不安全
B. 死锁
C. 死机
D. 不一致
【答案】D
【解析】对并发操作不加以控制,会带来数据不一致性问题。
6. 在数据库物理设计阶段,需要考虑为关系表建立合适的索引,关于建立索引的描述,有下列说法:
Ⅰ. 对于经常在其上需要执行查询操作并且数据量大的表,可以考虑建立索引
Ⅱ. 对于经常在其上需要执行插入、删除和更新操作的表,可以考虑建立索引
Ⅲ. 对于经常出现在WHERE 子句中的属性,可以考虑建立索引
GROUPBY 子句中的属性,Ⅳ. 对于经常出现在ORDERBY 子句,应尽量避免建立索引上述说
法正确的是( )。 A. B. C. D.
【答案】C
【解析】对于频繁执行查询操作并且数据量较大的表或者经常出现在where 子句、orderby 子句和groupby 子句中的属性应当建立索引,索引是一种单独的、物理的数据库结构,它是某个表中一列或若干列值的集合和响应的指向表中物理标识这些值的数据页的逻辑指针清单,索引技术是用来优化查询操作的,与插入、删除和更改操作没有关系。
索引是一个单独的、物理的数据库结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。
7. SQL 语言中,HAVING 子句用于筛选满足条件的( )。
A. 列