2008年9月等考四级数据库工程师真题专家解析

原创
企业动态
2008年9月全国计算机等考四级数据库工程师笔试试题解析。

【51CTO.com独家特稿】2008年9月全国计算机等考四级数据库工程师笔试试题答案解析。

2008年9月全国计算机等考四级数据库工程师笔试试题

一、选择题:

1.A.。规划与分析阶段包括任务陈述、确定任务目标、确定系统范围与边界、确定用户视图。

2.A 。

3.D.在最终的IDEF1X模型中,所有实体集间的联系必须用确定联系来描述,m:n属于不确定联系。

4.D.常用的数据查询最好建立在索引上,可以提高查询性能。而在经常更新的属性上建立索引,将连带导致经常 更新索引,降低性能。

5.A.

6.D.授权语句为:GRANT 对象权限名[,…]ON{表名|视图名|存储过程名} TO {数据库用户名|用户角色名},这里权限是select,表名是T1,用户是u1。

7.D.

8.C.连接数据库的是Connection对象,RecordSet从数据库中获取记录并存放与本地内存中。

9. C。

10. B。

11.C.

12.D。轮转法对点查询和范围查询的处理非常复杂,但是范围划分法就相当简单。

13.A。

14.A.回滚就是撤销以前的数据库修改,即UNDO操作。

15.B.静态转储不能运行其它事务,降低了可用性,动态转储正好相反。

16.A.

17.D.要进行事务日志备份,必须将数据库的故障还原模型设置为"完全"方式或"大容量日志记录的"方式。

18.D。压力、并发、查询效率都是性能范畴。

19.C.

20.D 。

21.B.事务中的操作,要么都成功,要么都失败。显然操作二在针对("03560","研发",4600)是会失败,则整个操作全部失败,数据将不会修改,故选B。

22. C。试图只是方便查询,并不实际分配存储空间,也不会提高查询性能,故选项A、B错误。又由于1000不在200和500之间,故根据WITH CHECK OPTION的要求将不能插入,故选项D错误。

23.C。

24.B.SQLSERVER以页为最小存储单位,一个页为8K,故一个页最多可以存储2行。所以存储10万行需要10万/2=5万个页,总容量为:5万×8K=400M。

25.B.第A列有两个1,因此A'B和A'D都将不唯一,故选项A、D错误。同理D中有两个1,故D'A、D'B和D'C都将不唯一,故选项C错误。而B中,每一列都不相同,故理论上可以存在B'A、B'C、B'D,当然还有A'C。

26.C.将出现在函数右边的属性统统剔除,剩余PID和GoodsID。

27.B.元数据是数据的数据,题中数据有I和II,数据的数据有II和V,故选择B。

28.D.创建一个触发器可以满足需求。

29 C。SQL语句:

Select 课程号 from 授课表 a JOIN 教师表 b On a.教师号=b.教师号 where 职称='教授',

可以找出所有被教授上过的课,那么不在其中的自然就是没有被教授上过的课。

30.C.一条月销售记录包含的粒度最大,而月销售表显然记录数最少,故选择C。#p#

二、简答题

1.

I:试图不能建立索引,无效。

II:视图V1建立在T3上,T2的索引优化对V1没有影响。

III:可以在一定程度上提高V1的查询效率,但是从T3的每行记录粒度为"日"查询到粒度"季",大约每次查询涉及90行。而从T4的每行记录粒度为"月"查询到粒度"季",大约每次查询只涉及3行,显然后者的查询效率更高。另外T2的访问频率相当高,若是V1建立在T2上,显然会更加增加其查询频率,降低查询效率。

IV:为5种方案中最优方案。每次查询涉及行数最少(3条),而且T4的访问频率最低。

V:每次查询牵涉记录行数比方案III要多,虽然T2查询频率较T3少,但是总体性能不如方案III.

2、

(1)create clustered index ZY_ind on Students(专业 ASC)。

(2)

 
#p#

三、

1、

Create procedure pUpdate 
    @fl as char(6),
 @jg as varchar(20) output
As
If not exists(Select * from 商品表where 分类=@fl)
 BEGIN
  If @fl="电脑" Update 商品表 set 单价=单价*0.9 where 分类="电脑"
  Else
   BEGIN
    If(@fl="电视") Update 商品表 set 单价=单价*0.94 where 分类="电视"
    Else
     BEGIN
      If(@fl="冰箱") Update 商品表 set 单价=单价*0.97 where 分类="冰箱"
     END
   END
  Set jg="修改已成功"
 END
Else
  Set jg="指定的分类不存在"
或者:
Create procedure pUpdate 
    @fl as char(6),
 @jg as varchar(20) output
As
If not exists(Select * from 商品表where 分类=@fl)
 BEGIN
  case
   when @fl="电脑" then Update 商品表 set 单价=单价*0.9 where 分类="电脑"
   when @fl="电视" then Update 商品表 set 单价=单价*0.94 where 分类="电视"
   when @fl="冰箱" then Update 商品表 set 单价=单价*0.97 where 分类="冰箱"
  end
  Set jg="修改已成功"
 END
Else
  Set jg="指定的分类不存在"

2、

(1)如图:

 

(2)第二范式编码,数据存在冗余,比如图书销售表应该为:

图书编号、书店编号、售书日期、售书数量、读者编号等信息就可以了,至于读者姓名和读者电话等信息应该存储在读者表中。

(3)

出版社表(出版社编号,出版社名称),主键:出版社编号

图书表(图书编号,图书名称,出版社编号,出版时间,出版数量,版次),主键:图书编号。外键:出版社编号。

读者表(读者编号,读者姓名,读者电话),主键:读者编号

城市表(城市编号,城市名称),主键:城市编号

书店表(书店编号,联系电话,城市编号),主键:书店编号,外键:城市编号。
销售表(图书编号,销售日期,销售数量,书店编号,读者编号),主键:图书编号,销售日期,书店编号,读者编号。

3、

(1)A=30;B=20;C=40;

(2)

日志记录









事务T3回滚,C取值不变。
A=30;B=20;C=40;

【编辑推荐】

  1. 2009年全国计算机等级考试专题
  2. 2008年9月等考四级数据库笔试试题
责任编辑:book 来源: 51CTO.com
相关推荐

2009-03-28 11:48:56

等考四级数据库工程师等考试题

2009-03-29 10:01:58

等考四级数据库等考试题

2009-03-28 11:34:09

等考四级数据库工程师等考试题

2010-03-29 13:48:58

数据库工程师

2009-09-16 14:31:19

四级网络工程师计算机等级考试

2009-03-28 16:17:00

等考四级网络工程师等考试题

2009-09-19 10:44:00

四级数据库工程师计算机等级考试

2010-03-27 09:15:09

四级网络工程师计算机等级考试

2010-03-28 11:53:13

网络工程师试题专家答案

2009-03-27 10:29:55

等考四级网络工程师等考试题

2009-03-05 13:28:27

等考数据库工程师大纲

2009-03-28 16:02:17

等考三级数据库技术等考试题

2009-09-16 14:54:54

四级网络工程师计算机等级考试

2009-03-28 18:14:08

等考四级网工等考试题

2011-09-17 19:58:36

计算机等级考试

2011-01-24 12:25:42

四级数据库

2011-01-27 11:34:30

四级数据库

2009-03-28 11:22:00

等考三级数据库技术等考试题

2009-09-19 10:49:00

四级网络工程师计算机等级考试

2011-01-20 11:27:25

四级据库技术
点赞
收藏

51CTO技术栈公众号