数据库系统工程师基础知识(选择题)模拟试卷18
中文选择题
1.CMM包括5个成熟等级,开发的能力越强,开发组织的成熟度越高,等级越高。这5个等级分别是初始级、可重复级、已定义级、已管理级和______。(A)
A. 优化级
B. 成熟级
C. 标准级
D. 完全级
解析:
2.设关系只为第一范式,若它的每一非主属性都完全函数依赖于主码,则称R属于( )。(B)
A. 1NF
B. 2NF
C. 3NF
D. 4NF
解析:
3.数据仓库系统通常采用3层的体系结构,底层为数据仓库服务器,中间层为(12),顶层为前端工具。(B)
A. 应用服务器
B. OLAP服务器
C. OLTP服务器
D. ODS
解析:数据仓库的体系结构如图21-1所示。
4.为防止非法用户进入数据库应用系统,应采用的安全措施是(5)。(D)
A. 授权机制
B. 视图机制
C. 数据加密
D. 用户标识与鉴别
解析:授权机制是对系统合法用户操作权限的设定,故选项A错误;视图机制是将视图之外的数据屏蔽达到安全性,也是针对系统合法用户的,故选项B错误;数据加密与用户访问应用系统无关,故选项C错误;用户与鉴别就是专门验证用户合法性的,在用户登录数据库时进行验证,可以防止非法用户进入应用系统,故选项D正确。
5.在数据库系统中,数据完整性约束的建立需要通过数据库管理系统提供的数据(20)语言来实现。(A)
A. 定义
B. 操作
C. 查询
D. 控制
解析:数据库完整性(Database Integrity)是指数据库中数据的正确性和相容性。数据库完整性由各种各样的完整性约束来保证,因此可以说数据库完整性设计就是数据库完整性约束的设计。关系的完整性主要包括域完整性、实体完整性和参照完整性三种。(1)域完整性。域完整性是对数据表中字段属性的约束,它包括字段的值域、字段的类型及字段的有效规则等约束,它是由确定关系结构时所定义的字段的属性决定的。(2)实体完整性。实体完整性是对关系中的记录唯一性,也就是主键的约束。准确地说,实体完整性是指关系中的主属性值不能为NULL且不能有相同值。(3)参照完整性。参照完整性是对关系数据库中建立关联关系的数据表间数据参照引用的约束,也就是对外键的约束。准确地说,参照完整性是指关系中的外键必须是另一个关系的主键有效值,或者是NULL。数据库完整性对于数据库应用系统非常关键,其作用主要体现在以下几个方面:(1)数据库完整性约束能够防止合法用户使用数据库时向数据库中添加不合语义的数据。(2)利用基于DBMS的完整性控制机制来实现业务规则,易于定义,容易理解,而且可以降低应用程序的复杂性,提高应用程序的运行效率。(3)合理的数据库完整性设计,能够同时兼顾数据库的完整性和系统的性能。(4)在应用软件的功能测试中,完善的数据库完整性有助于尽早发现应用软件的错误。数据库完整性约束可分为6类:列级静态约束、元组级静态约束、关系级静态约束、列级动态约束、元组级动态约束、关系级动态约束。在实施数据库完整性设计的时候,有一些基本的原则需要把握:(1)根据数据库完整性约束的类型确定其实现的系统层次和方式,并提前考虑对系统性能的影响。一般情况下,静态约束应尽量包含在数据库模式中,而动态约束由应用程序实现。(2)实体完整性约束、参照完整性约束是关系数据库最重要的完整性约束,在不影响系统关键性能的前提下需尽量应用。用一定的时间和空间来换取系统的易用性是值得的。(3)要慎用目前主流DBMS都支持的触发器功能,一方面由于触发器的性能开销较大,另一方面,触发器的多级触发不好控制,容易发生错误,非用不可时,最好使用 Before型语句级触发器。(4)在需求分析阶段就必须制定完整性约束的命名规范,尽量使用有意义的英文单词、缩写词、表名、列名及下画线等组合,使其易于识别和记忆.(5)要根据业务规则对数据库完整性进行细致的测试,以尽早排除隐含的完整性约束间的冲突和对性能的影响。(6)要有专职的数据库设计小组,自始至终负责数据库的分析、设计、测试、实施及早期维护。数据库设计人员不仅负责基于DBMS的数据库完整性约束的设计实现,还要负责对应用软件实现的数据库完整性约束进行审核。(7)应采用合适的CASE工具来降低数据库设计各阶段的工作量。在数据库系统中,数据完整性约束的建立需要通过数据库管理系统提供的数据定义语言来实现。
6.“一旦事务成功提交,其对数据库的更新操作将永久有效,即使数据库发生故障”,这一性质是指事务的(12)。(D)
A. 原子性
B. 一致性
C. 隔离性
D. 持久性
解析:本题考查的是事务的基本概念。事务的4个特性为原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability),这4个特性也称事务的ACID性质。原子性:指事务的所有操作在数据库中要么全做要么全都不做。如银行转账中的两个操作必须作为一个单位来处理,不能只执行部分操作。一致性:指事务独立执行的结果,将保持数据的一致性,即数据不会因为事务的执行而遭受破坏。数据的一致性是对现实世界真实状态的描述,如银行转账业务执行后也应该是账目平衡的。数据库在运行过程中会出现瞬间的不一致状态,如从A账户减去X元到给B账户加上X元之前这段时间数据是不一致的,但这种不一致只能出现在事务执行过程中,并且不一致的数据不能被其他事务所访问。一致性可以同DBMS的完整性约束机制来自动完成,而复杂的事务则由应用程序来完成。隔离性:指一个事务的执行不能被其他事务干扰。并发事务在执行过程中可能会对同一数据进行操作,这些事务的操作应该不会相互干扰,是相互隔离的。如事务执行中数据不一致性状态出现时不能让其他事务读取到不一致的数据。持久性:指一个事务一旦提交,它对数据库的改变必须是永久的,即便系统出现故障时也是如此。如转账事务执行成功后,A、B两个账户上的余额就是一个新的值,在没有出现下一个事务对其修改之前一直保持不变,即使系统出现故障,也应该恢复到这个值。
7.不能激活触发器执行的操作是(4)。(D)
A. DELETE
B. UPDATE
C. INSERT
D. Select
解析:触发器是一种特殊类型的存储过程,主要是通过事件进行触发而被执行的,而存储过程可以通过存储过程名字而被直接调用。当对某一表进行诸如UPDATE、INSERT、DELETE这些操作时,数据库就会自动执行触发器所定义的SQL语句,从而确保对数据的处理必须符合由这些SQL语句所定义的规则。触发器的主要作用就是其能够实现由主键和外键所不能保证的复杂的参照完整性和数据的一致性。触发器可以解决高级形式的业务规则或复杂行为限制,以及实现定制记录等一些方面的问题。例如,触发器能够找出某一表在数据修改前后状态发生的差异,并根据这种差异执行一定的处理。此外一个表的同一类型(INSERT、UPDATE、DELETE)的多个触发器能够对同一种数据操作采取多种不同的处理。总体而言,触发器性能通常比较低。当运行触发器时,系统处理的大部分时间花费在参照其他表的这一处理上,因为这些表既不在内存中也不在数据库设备上,而删除表和插入表总是位于内存中。可见触发器所参照的其他表的位置决定了操作要花费的时间长短。
8.以下不属于中间件技术的是(2)。(D)
A. Java RMI
B. CORBA
C. DCOM
D. Java Applet
解析:中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间
本文档预览:3600字符,共8178字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载