2015计算机三级数据库技术练习题和答案
Ⅳ.根据用户要求对应用程序从功能上进行扩充和完善
以上工作中一般不属于数据库管理员日常维护工作的是( )。
A.仅Ⅰ和ⅢB.仅ⅣC.仅Ⅱ和ⅣD.仅Ⅱ
参考答案:B
参考解析:数据库维护的主要内容有以下几方面:①数据库的转储和恢复;②数据库安全性、完整性控制;③数据库性能的检测和改善;④数据库的重组和重构。Ⅳ选项不属于数据库维护工作。
2[单选题] 设在SQL Server 2008某数据库中有销售表(商品号,销售时间,销售数量,销售价格),其中商品号的类型为char(6),销售价格的类型为int。现要定义统计指定商品销售总价的标量函数。有下列定义该标量函数的语句:
Ⅰ.Create FUNCTION db0.GetTotal(@GoodID char(6))
Returns int AS
BEGIN
Return(SELECT SUM(销售价格)FROM销售表WHERE商品号=@GoodID.
END
Ⅱ.Create FUNCTION db0.GetTotal(@GoodID char(6))
Returns int AS
BEGIN
Returns(SELECT SUM(销售价格)FROM销售表WHERE商品号=@GoodID.
END
Ⅲ.Create FUNCTION db0.GetTotal(@GoodID chat(6))
Returns int
BEGIN
Return(SELECT SUM(销售价格)FROM销售表WHERE商品号=@GoodID.
END
1V.Create FUNCTION db0.GetTotal(@GoodID char(6))
Returns int
Returns(SELECT SUM(销售价格)FROM销售表WHERE商品号=@GoodID.
上述语句中,正确的是( )。
A.仅I和ⅡB.仅Ⅲ和ⅣC.仅Ⅱ和ⅣD.仅I和Ⅲ
参考答案:D
参考解析:标量函数返回一个确定类型的标量值。函数体语句定义在BEGIN-END语句内,其中包含了可以返回值的Transact-SQL命令。
创建标量函数的语法如下:
CREATE FUNCTION[owner name.]function_name
([{@parameter_name[AS][type_schema_name.]parameter_data_type
[=default]}
[,…n]
)
RETURNS return_data_type
[AS]
BEGIN
function_body
RETURN scalar_expression
END
[;]
3[单选题] 在SQL Server 2008中,有商品表(商品号,商品名,单价)和销售表(商品号,销售时间,销售价格)。现要限制“销售价格”的取值必须在此商品“单价”的0.6倍到1.5倍范围之内,实现这个约束的正确代码是( )。
A.CHECK(销售价格BETWEEN单价*0.6 AND单价*1.5)B.CHECK(销售价格BETWEEN商品表.单价*0.6 AND商品表.单价*1.5)C.CREATE TRIGGER tri_Sales ON销售表FOR INSERT,UPDATE
As IF EXISTS(SELECT*FROM INSERTED a JOIN商品表b
ON a.商品号=b.商品号WHERE销售价格NOT BETWEEN单价*0.6 AND单价*1.5)
ROLLBACKD.CREATE TRIGGER tri_ales ON销售表INSTEAD OF INSERT,UPDATE AS
IF EXISTS( SELECT冰FROM INSERTED a JOIN商品表b
ON a.商品号=b.商品号
WHERE销售价格NOT BETWEEN单价*0.6 AND单价*=1.5)
ROLLBACK
参考答案:C
参考解析:FOR指定触发器只有在引发的SQL语句中指定的操作都已成功执行,并且所有的约束检查也成功完成后才执行触发器,这种触发器称为后触发型触发器。INSTEAD OF指定执行触发器而不是执行引发触发器执行SQL语句,从而替代触发语句的操作,称这种触发器为前触发型触发器。
4[单选题]SQL Server 2008提供了多种数据备份方法:
Ⅰ.完整数据库备份
Ⅱ.差异数据库备份
Ⅲ.文件备份
Ⅳ.差异文件备份
以上备份方法中,在备份完成之后必须再对日志进行备份的是( )。
A.仅ⅡB.仅Ⅲ和ⅣC.仅Ⅰ和ⅡD.仅Ⅳ
参考答案:B
参考解析:文件备份主要是对数据库中数据文件的备份,不对日志文件备份,因此在备份完成之后必须再对日志进行备份。所以选B。
5[单选题] 某跨国公司的业务系统需要提供全球性服务,该业务系统需要24小时×7天在线服务,系统业务繁忙,为了保证业务系统中数据库数据的安全,需要设计与实施数据转储机制,设计完成该数据库每天数据增量的转储需要2个小时,在不考虑成本因素的情况下,下列最合理的是( )。
A.配备高性能数据库服务器,通过事务传送机制实时地将数据库中的任何变化反映到备份环境中
B.每天划出长度为2小时的时间窗口tw,在tw内采用静态转储方法实现每天数据增量的转储
C.每天划出长度为2小时的时间窗口tw,在tw内采用动态转储方法实现每天数据增量的转储
D.每周做一次完全转储,每天选择浮动时间段对变化的数据进行转储
参考答案:A
参考解析:在静态转储过程中系统不能运行其他事务,因为会降低数据库的可用性;动态备份运行转储操作和用户事务并发执行,即允许在转储过程中对数据库进行存取和修改,动态储存虽然克服了静态储存的一些缺点,但是动态转储可能造成数据库的不一致性,使数据的有效性得不到保证。为了数据的有效性,需要引入日志文件,用它记录转出期问各种事务对数据库的修改活动记录,然后使用动态转储的备份副本加上日志文件就可以将数据库恢复到某一时刻的正确状态,因此8、c不合适。D中完全转储加增量转储,在这种转储方式下,恢复中使用的转储文件较多,其中任何一次转储出了问题都会导致恢复失败,同时恢复时间长,因此D也不可取。
6[单选题] 在一个分布式数据库中,数据集S被分片为S1和S2。S1存储在场地1的DB2数据库中;S2有两个副本,一个副本存储在场地2的SQL Server数据库中,另一个副本存储在场地3的Oracle数据库中。用户在开发数据库应用程序时,统一采用0DBC访问数据源。用户程序控制两个副本的访问顺序:先访问场地2的副本,如果失败,则转向场地3的副本。根据以上描述,判断该分布式数据库具有的透明性级别是( )。
A.分片透明性B.位置透明性C.全局数据模型透明性D.局部数据模型透明性
参考答案:D
参考解析:分布透明性包括分片透明性、位置透明性、局部数据模型透明性。分片透明性是最高层次,指的是用户或应用程序只对全局关系进行操作而不必考虑关系分片的情况。位置透明性是下一层次,指用户或应用程序只需了解数据分片情况,而不必了解片段的存储场地。局部数据模型透明性指的是用户或用户程序不必了解局部场地上使用的是哪种数据模型,但是必须了解全局数据的分片情况,还需了解各片断的副本复制情况及各片断和它们副本的场地位置分配情况。由于本题中考虑到场地2和场地3的选择,所以位置对用户来说并不透明,应选D。
7[填空题] SQL Server中有五种约束类型,分别是主键约束、【3】、唯一性约束、缺省约束和检查约束。
参考解析:外键约束
【解析】SQL Server中有五种约束类型,分别是主键(PRIMARY KEY)约束、外键(FOREIGN KEY)约束、唯一(UNIQUE)约束、缺省(DEFAULT)约束和检查(CHECK)约束。