建设背景
 我校自2013年被确定为国家中等职业教育改革发展示范学校第三批项目建设校以来,按照国家示范校建设标准及项目任务书的要求,加强计算机应用等重点专业建设,有力地促进了学校的全面发展,特别是对专业建设中实训基地建设,有了突破性的发展,为区域经济和社会发展做出了重要贡献。
  随着宣城市当地经济的发展和我校计算机应用专业的招生规模不断扩大,我校的校内实训基地建设已渐渐呈现出设备陈旧落后,软件需要更新、场地亟待维修等问题,只有通过示范实训基地建设,为学生、培训学员提供坚实的技术基础,才能妥善的解决好
建设基础
 基地通过多种形式与多家公司秉承"共建""共享""共赢"的原则进行合作,学校专业教师与企业专家共同制定实训基地管理办法。学生实习实训按照企业生产形式组织,借鉴企业管理规范进行管理。在企业专家负责指导下学校专业教师负责组织实施学生实习实训,按模块、按项目依据企业培训标准对实训教学进行评价。
本校计算机专业现有教师20名,其中高级教师7名,中级教师10名,双师型教师20名,双师型教师100%;另学校外聘兼职教师1名指导学生实习实训。
负责人简介
《SQL Server 2008数据库应用教程》

  

发布时间:2019-01-27 03:01:47   出处:    阅读次数:

  

SQL Server 2008数据库应用教程

题库及答案

数据库基础知识

一、选择题

1.数据模型的三个要素是( C  )。

A.实体完整性、参照完整性、域完整性

B.数据结构、数据操作、数据完整性

C.数据增加、数据修改、数据查询

D.外模式、模式、内模式

2.下列选项中(A)不是数据库系统的特点。

A.数据加工     B.数据共享    C.关系模型    D .减少数据冗余

3.用户或应用程序看到的那部分局部逻辑结构和特征的描述是(C)模式。

A.模式

B.物理模式

C.子模式

D.内模式

4. 区分不同实体的依据是(B

A.名称

B.属性

C.对象

D.概念

5.在一个关系中,能唯一标识元组的属性或属性组称为关系的(B)。

A.副键      B.主键     C.从键  D.参数

6.SQL Server 属于(A)类型的数据模型。

A.关系型数据模型

B.层次性数据模型

C.网状数据库模型

D.对象弄数据模型

7.关系模型中,一个键是(C )。

A. 可以由多个任意属性组成

B. 至多由一个属性组成

C. 由一个或多个属性组成,其值能够惟一标识关系中一个元组

D. 以上都不是

8. 一般情况下,当对关系RS进行自然连接时,要求RS含有一个或者多个共有的(C

A.记录

B.行

C.属性

D.元组

二、填空题

1.数据模型有层次模型、网状模型、关系模型和树状模型。

2.ER方法的三要素是实体、属性、联系

3.现有如下关系:患者(患者编号,患者姓名,性别,出生日期等)、主键为“患者编号”;医生(医生编号,医生姓名等),医疗(患者编号,医生编号,医生姓名,诊断日期,诊断结果等),主键为“患者编号+医生编号+诊断日期”。其中,医疗关系中的外键是医生编号和患者编号

4. 一个关系中取出满足某个条件的所有元组形成一个新的关系的操作是选择操作。

三、判断题

1.数据库(DB)、数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是:DBS包括DBDBMS 。(对)

2.在修改数据结构时,为保证数据库的数据独立性,只需要修改三级模式之间的两层映射。(对)

3.关系数据库管理系统应能实现的专门关系运算包括关联、更新、排序。(错)

4.一个关系只有一个外键。(错)

5. 在一个关系R中,若每个数据项都是不可分割的,那么关系R一定属于1NF。(对)

四、简答题

1.两个实体型间的联系有三种:一对一,一对多,多对多,请画图举例说明。





参考答案:











 


第1章       SQL Server 2008 R2的安装与配置

一、选择题

1. A )管理工具是MicrosoftSQL Server 2008提供的集成环境,这种管理工具用于访问、配置、控制、管理和开发SQL Server的所有组件。

AMicrosoft SQL Server ManagementStudio

BSQL Server配置管理器

CAnalysis Services

DSQL Server Business IntelligenceDevelopment Studio

二、填空题

1.SQL Server 2008包括企业版、标准版、开发版、简易版和工作组版等版本。

三、判断题

1SQL语言是过程化的语言,容易学习。(错)

四、简答题

1.简述SQL Server 2008 如何配置

参考答案:1、配置服务器TCP/IP:(1)Windows“开始”菜单中的“运行”,输入“SQLServerManager10.msc”回车或“确定”;(2)在SQL Server Configuration Manager中展开“SQL Server网络配置”节点,右击“TCP/IP”,选择“启用”;(3)右击“TCP/IP”,选择“属性”,展开最下面的“IPALL”节点,“TCP动态端口”设置为0,“TCP端口”设置为1433;(4)在SQL Server Configuration Manager中展开“SQL Server服务”节点,右击“SQL ServerMSSQLSERVER)”,选择“重新启动”。

第2章       数据库管理

一、选择题

1.修改数据库的语句是以下哪个选项?(C

ACREATE TABLE

BCREATE DATABASE

CALTER DATABASE

DDROP TABLE

2. SQL Server 中的数据库文件组分为( B )。

A主文件组和用户自定义文件组                    B主文件组和次文件组

C用户自定义文件组和此文件组                    C以上都不是

3.SQL Server 2008 的系统数据库是(D )。

AMasterTempdbAdventureWorksMsdbResource

BMasterTempdbModelLibrarResource

CMasterNorthwindModelMsdbResource

DMasterTempdbModelMsdbResource

4. 在创建数据库时,系统自动将(C)系统数据库中的所有用户定义的对象都复制到数据库中。

AMaster

BMsdb

CModel

DTempdb

二、填空题

1.创建数据库的命令是CREATE DATABASE

2.删除数据库的命令是DROP DATABASE

3. Tempdb数据库是一个工作空间,用于保存临时对象或中间结果集。

4.可使用系统存储过程sp_renamedb重新命名数据库。

5. Microsoft SQLServer 2008 中,主数据文件的后缀是_.mdf__,日志数据文件的后缀是__.ldf___

6.每个文件组可以有____个日志文件。

三、判断题

1.如果master数据库变得不可用,那么SQL Server数据库引擎将无法启动。(对)

2.建立数据库之后没有必要配置事务日志。(错)

3.SQL Server2008中,一个数据库存到少需要有一个数据文件和一个事务日志文件。(对)

4.对于已经存在的数据库,不可以对数据库的名称、大小、存放位置、文件名和所在文件组进行修改。(错)

5. SQL Server 2008允许用户通过收缩数据库把未使用的空释放出来,数据文件及日志文件都能够缩小,可以通过手动或自动两种方法收缩数据库。(对)

四、简答题

1SQL Server 2008系统数据库包括哪几个?分别有什么作用?

参考答案:教材27-28

5个数据库:mastermodelmsdbtempdbresourcemaster是保存一些数据库信息,model是当你建立一个新数据库时,SQLServer会把model数据库中的所有对象建立一份拷贝并移到新数据库中。msdb所有的任务调度、报警、操作员都存储在msdb数据库中。tempdb是临时供所有来访问你的SQLServer的用户使用,作为用户访问时的容器所用。Resource数据库是一个只读和隐藏的数据库,它包含了SQLServer 2008中的所有系统对象。)

2.简述使用SQLServer Management Studio分离及附加数据库的步骤。

参考答案:教材41-44

分离数据库:“Microsoft SQLServer Management Studio”对象资源管理器中展开“数据库”,选择目标数据库,右击,选择“任务”-“分离”。

附加数据库:“Microsoft SQL ServerManagement Studio”对象资源管理器中展开“数据库”,右击“数据库”,选择“附加”。

第3章       表的创建管理与操作

一、选择题

1.                  使用T-SQL创建表的语句是(B   )。

ADELETE TABLE                                 BCREATE TABLE  

CADD TABLE                                 DDROP TABLE

2.                  T-SQL中,关于NULL值叙述正确选项是D)。

ANULL 表示空格

BNULL表示0

CNULL既可以表示0,也可以表示是空格

DNULL表示空值

3.                  为数据表创建索引的目的是((1A ),可以在创建表时用((2C)两种方法来创建唯一索引。

A.提高查询的检索性能   B.创建唯一索引  C.创建主键   D.归类

A.设置主键约束,设置唯一约束   BCREATE TABLECREATE INDEX

C.设置主键约束,CREATEINDEX  

D.以上都可以

4.                  SQL Server的字符型系统数据类型主要包括(B )。

Aintmoneychar             Bcharvarchartext

Cdatetimebinaryint          Dcharvarcharint

5.                  字符串常量使用(A )作为定界符。

A.单引号B .双引号C.方括号D.花括号

表达式‘123'+‘456' 的结果是(C )。

A '579' B 579C '123456' D '123'

6.                  关系数据表的关键字可由(D)列属性组成。

A .一个    B .两个     C .多个     D .一个或多个

7.                  下面是有关主键和外键之间关系的描述,请问哪些描述是正确的(A)。

A.一个表中最多只能有一个主键约束,多个外键约束。

B.一个表中最多只能有一个外键约束,一个主键约束。

C.在定义主键外键时,应该首先定义主键约束,然后定义外键约束。

D.在定义主键外键时,应该首先定义外键约束,然后定义主键约束。

8.                  【表设计器】的“允许空”单元格用于设置该列是否可输入空值,实际上就是创建该列的(C )约束。

A.主键    B.外键    CNULL    DCHECK

9.                  可使用下列操作中的(D)为字段输入 NULL 值。

A.输入 NULL

B.输入 <NULL>

C.将字段清空

D.按【 Ctrl+O 】键

10.              假设列中的数据变化规律如下,请问哪一种情况可以使用IDENTITY列定义(A)。

A12345…

B1020304050…

C1123581321…

D246810…

11.              关于索引描述错误的是以下的哪一项?(A

A.表中的任何数据列都可以添加索引

B.创建索引的列最好不要含有许多重复的值

C.一般不给很少使用的列添加索引

D.并不是数据库中的聚集索引越多搜索效率就越高

12.              以下哪种情况应尽量创建索引(  A  )。

AWHERE子句中出现频率较高的列

B具有很多NULL值的列

C记录较少的基本表

D需要更新频繁的基本表

13.              在一个表上,最多可以定义多少个聚簇索引(A)。

A1

B2

C3

D.多个

14.              对于DROP TABLE 命令的解释正确的是(B

A.删除表里的数据,保留表的数据结构

B.删除表里的数据,同时删除了表的数据结构

C.保留数据,删除表的数据结构

D.删除此表,并删除数据库里所有与此表有关联的表

15.              下列叙述错误的是(C)。

AALTER TABLE 语句可以添加字段

BALTER TABLE 语句可以删除字段

CALTER TABLE 语句可以修改字段名称

DALTER TABLE 语句可以修改字段数据类型

16.              ALTERTABLE 语句可以(A )。

A.同时修改字段数据类型和长度

B.修改计算列

C.在添加字段时创建该字段的约束

D.同时删除字段和字段约束

17.              下面关于 UPDATE 语句错误的是(D )。

A.可以使用 DEFAULT 关键字将字段设置为默认值

B.可以使用 NULL 关键字将字段设置为空值

C.可使用 UPDATE 语句同时修改多行

D.如果 UPDATE 语句中没有指定搜索条件,则默认只能修改第一行

18.              如果表创建唯一索引后SQL Server将禁止(B)语句向表中添加重复的键值行。

AINSERT      BINSERTUPDATE            CUPDATE    DADD

二、填空题

1.SQL Server Management Studio可实现对数据表  创建  、修改、重命名和删除等操作。

2.可以使用­  create table  语句创建表。

3.数据完整性分为实体完整性、域完整性、引用完整性和用户定义完整性这4类。

4    实体    完整性,它要求表中所有的元组都应该有一个惟一标识,即主关键字。可以使用  PRIMARY KEY  约束实现实体完整性,也可以将UNQIUE 约束和           NOT NULL约束一起使用来实现实体完整性。

三、判断题

1.表间的关系有3种类型即一对一关系、多对多关系和一对多关系。(对)

2.在一对多关系中,A表中的一行在B表中能够有许多与之匹配的行,在B表中的一行在A表中也能有许多与之匹配的行。(错)

3.当定义moneysmallmoney数据类型输入数据时,可以不在有效位置前面加货币单符号。(错)

4.char(5)来存储“Hello I am lily”,SQL Server会将字符串截断存成“Hell”。(错)

5.可以使用系统存储过程sp­_helpTransact-SQL)来查看表的定义。(对)

6.每个表中只能定义一个PRIMARYKEY约束。(对)

四、简答题

1.简述数据完整性。

参考答案:教材P611.实体完整性 2. 域完整性 3.引用完整性 4.用户定义完整性)

2.写出T-SQL语句,对产品销售数据库(库名CPXS)中的产品表进行如下操作:

(1) 插入如下记录

0001             空调      3000             200

0203             冰箱      2500             100

0301             彩电      2800             50

参考答案:

insert into 产品表Values('0001','空调3000','200')

insert into 产品表Values('0203','冰箱2500','100')

insert into 产品表Values('0301','彩电2800','50')

(2) 将产品数据库的产品表中的每种商品的价格打8折。

 参考答案:

       update 产品表SET 价格=价格*0.8

(3) 将产品数据库的产品表中价格打8折后小于50的商品删除。

 参考答案:

DELETE FROM 产品表

       WHERE 价格<50

第4章       数据查询

一、选择题

1.       语句“SELET COUNT(*) FROM human”返回(A )行。

A1      B2     C3      D4

2.       假设数据表“test1”中有10条数据行,可获得最前面两条数据行的语句为( B )。

ASELECT  2 * FROM test1                          

BSELECT TOP 2 * FROM test1

CSELECT PERCENT 2 * FROM test1    

DSELECT PERCENT 20 * FROM test1

3.       下面关于查询语句中 ORDER BY 子句使用正确的是(C )。

A.如果未指定排序列,则默认按递增排序

B.数据表的列都可用于排序(各种类型)

C.如果在 SELECT 子句中使用了 DISTINCT 关键字,则排序列必须出现在查询结果中

D.联合查询不允许使用 ORDER BY 子句

4.       T-SQL 语法中, SELECT 查询语句的子句有很多个,但至少包括的子句是(⑴B),使用关键字(⑵A )可以把重复行屏蔽,将多个查询结果返回一个结果集合的运算符是(⑶B ),如果在 SELECT 语句中使用聚合函数(列函数)进行分组统计或汇总时,一定在后面使用(⑷A )。

ASELECT INTO          BSELECT FROM

CSELECT GROUP        D.仅SELECT          

ADISTINCT    BUNION    CALL        DTOP

AJOIN        BUNION     CINTO       DLIKE

AGROUP BY   BCOMPUTE BY   CHAVING   DCOMPUTE

5.       T-SQL中,与NOT IN等价的操作符是(D

A=SOME

B<>SOME

C=ALL

D<>ALL

6.       下列关于查询设计器的使用错误的是(A

A .不能直接打开数据表为其添加、修改或删除记录

B.可以通过执行 INSERT 语句添加记录

C.可以通过执行 UPDATE 语句修改记录

D.可以通过执行 DELETE 语句删除记录

7.       T-SQL中,下列操作不正确的是(D

AAGE IS NOT NULL

BNOT(AGE IS NULL)

CSNAME='王五'

DSNAME='%'

8.       有关SELECT colA colB FROM table-name语句,请问下面哪一种说法正确的(A)。

A.该语句不能正常执行,因为出现了语法错误。

B.该语句可以正常执行,其中colA colB的别名。

C.该语句可以正常执行,其中colBcolA的别名。

D.该语句可以正常执行,colAcolB两个不同的列名。

9.       下面是有关分组技术的描述,请问哪一种描述是正确的(B)。

ASELEGT子句中的非合计列必须出现在GROUP BY子句中。

BSELEGT子句中的非合计列可以不出现在GROUP BY子句中。

CSELEGT子句中的合计列必须出现在GROUP BY子句中。

DSELEGT子句中的合计列可以不出现在GROUP BY子句中。

二、填空题

1. A B 两个数据表的记录数分别为 3 4 ,对两个表执行交叉联接查询,查询结果中最多可获得­ 12 条记录。

2. 假设ABC表用于存储销售信息,A列为销售人员姓名,C列用于销售额度,现在的要求是,查询每个销售人员的销售次数、销售金额、SELECT查询语句为SELECT A, COUNT(A) , SUM(C)FROM ABC GROUP BY A

3. 查询语句“SELECT name,sex,birthday FROM human”返回 3 列。

三、判断题

1.查询结果可以按文本方式显示。(对)

2.SQL Server中,不可以使用运算符及函数进行数学计算。(错)

四、简单题

1.为实现以下查询功能,请在下面空格内填上适当的语句。

1)查询stu-info表中所有记录的所有属性

    Select          

    From                  

 2)edu_d的数据库stu-info表中查找包含所学院代号xsh06的学生所有的信息

   Use          

   Go

   Select *

  From          

  Where  xsh=          

3)在成绩表xk中查询学生的学号、课程号、教师号、考试成绩(考试成绩按150分制计算)

   Select xh   as             ,

         Kch as  课程号,

         Kjh as  教师号,

        ‘150分制成绩’=kscj*          

   From          

4)查询数据表xk中考试成绩在60~70之间的学号、课程号、成绩

  Select xh  学号,kch  课程号,kscj  成绩

  Form xk

  Where kscj           60            70

参考答案:

1*

stu-info

2edu_d

  stu-info

‘06’

3)学号

  1.5

 Xk

4between

  and

2.什么是内连接、外连接和交叉连接?

参考答案:(可不举例)内连接是最常见的一种连接,也被称为普通连接或自然连接,它是系统默认形式,在实际使用中可以省略INNER关键字。如从student表和sc表中,查询所有不及格的学生的学号、学生姓名、所属院系、所选的课程号和成绩。

T-SQL语句为:

     SELECT student.sno,sname,sdept,cno,grade

  FROMstudent,sc

  WHEREstudent.sno=sc.sno and grade<60

外连接是指连接关键字JOIN后面表中指定列连接在前一表中指定列的左边或者右边,如果两表中指定列没有匹配行,则返回空值。有左外连接、右外连接和全连接三种。如用左外连接查询student表和sc表中的学生的SnoCnoSnameGrade

左外连接T-SQL语句为:

SELECTstudent.sno,cno,sname,grade

    FROM student LEFT JOIN sc ONsc.sno=student.sno

交叉连接即两个表的笛卡尔积,返回结果是由第一个表的每行与第二个表的所有行组合后形成的表,因此,数据行数等于第一个表中符合查询条件的数据行数乘以第二个表中符合查询条件的数据行数。如交叉连接studentsc两表。

T-SQL语句为:

SELECT * FROMstudent

SELECT * FROMsc

SELECTstudent.*,sc.* FROM student CROSS JOIN sc

(注:SELECT语句的例子可以不写)

第5章       视图的创建与管理

一、选择题

1.       SQL Server将创建视图的CREATE TABLE语句文本存储在(D)系统表中。

Asp_helptext          Bsyscommens             Cencryption                Dsysobjects

2.       不允许对视图中的计算列进行修改,也不允许对视图定义中包含有统计函数或(B)子句的视图进行修改和插入操作。

AORDER BY          BGROUP BY           CHAVING         DSELECT

3.       下面语句(B)是正确的。

A视图是一种常用的数据库对象,使用视图不可以简化数据操作。

B使用视图可以提高数据库的安全性。

C.视图结构与SELECT子句所返回的结果集结构相同,但视图中的列是由算术表达  式、函数或常量等产生的计算列时,必须在创建视图时指出列名。

DDELETE VIEW语句是删除视图

4.       下列(D)功能是视图可以实现的。

A.将用户限定在表中的特定行上

B.将用户限定在特定列上

C.将多个表中的列连接起来

D.将多个数据库的视图连接起来(分布式分区)

5.       列(C)选项是在使用视图修改数据时需要注意的。

A.在一个UPDATE语句中修改的字段必须属于同一个基表

B.一次就能修改多个视图基表

C.图中的所有列的修改必须遵守视图基表中所定义的各种数据完整性约束

D.可以对视图中的计算列进行修改

6.       下面是有关视图特征的描述,请问那些描述是正确的(D)。

AORDER BY子句可以出现在CREATE VIEW语句中。

BORDER BY 子句不可以出现在CREATE VIEW语句中。

CGROUP BY子句可以不出现在CREATE VIEW语句中。

DGROUP BY子句不可以出现在CREATE VIEW语句中。

7.       如果希望加密视图的定义文本,可以使用下面哪一个子句(D)。

AWITH CHECK OPTION

BWITH SCHEMABINDING

CWITH NOCHECK

DWITH ENCRYPTION

二、填空题

1.当检索数据时,往往在一个表中不能够得到想要的所有信息,SQLServer中提供了  视图  可解决这个问题。
2.视图与表不同,视图是一个___虚表______,即视图对所有对应的数据不进行实际存储。
3.对视图的操作可以使用__SQL ServerManagemetn Studio__进行直接操作,也可以使用_Transact-SQL _语句。
4.使用Transact-SQL中的_ CREATE VIEW _语句进行创建视图。
5.使用Transact-SQL中的__ALTERVIEW__语句可以修改视图的定义。
6.使用Transact-SQL中的__DROPVIEW__语句能够删除视图。

三、判断题

1.视图是一种数据库对象,是从一个或者多个数据表或视图中导出的虚表,视图的结构和数据是对数据表进行查询的结果。(对)

2.视图的命名必须遵循标识符命名规则,但可以与表同名。(错)

3.使用系统存储过程 sp_depends可以查看视图的定义信息。(错)

4.当对视图进行更新操作时,实际上是对视图所基于的表进行更新操作。(对)

四、简答题

1.学生成绩管理数据库中有3个表:“学生基本信息”、“课程”和“成绩”。学生基本信息表中含有字段:学号、姓名、性别、籍贯、入学年份、毕业学校、家庭地址……;课程表中含有字段:课程编号、课程名称;成绩表中含有字段:学号、课程编号、成绩、状态。
1)使用Transact-SQL语句建立视图view_cjxc1,要求查询出所有学生的姓名、考试课程名称、成绩。
2)使用Transact-SQL语句修改视图view_cjxc1,要求能够查询学号为“200601001”同学的考试课程名称及成绩。

参考答案:(1

CREATE VIEW view_cjxc1

AS

SELECT 学生基本信息.姓名,课程. 课程名称,成绩.成绩

FROM 学生基本信息 INNER JOIN 成绩

      ON学生基本信息.学号=成绩.学号

INNER JOIN 课程名称

      ON 成绩.课程编号=课程.课程编号

     

2

ALTER VIEWview_cjxc1

AS

SELECT 学生基本信息.姓名,课程. 课程名称,成绩.成绩

FROM 学生基本信息 INNER JOIN 成绩

      ON学生基本信息.学号=成绩.学号

INNER JOIN 课程名称

      ON 成绩.课程编号=课程.课程编号

   WHERE 成绩.学号=200601001

第6章       T-SQL编程与应用

一、选择题

1.       下面哪些字符可以用于T-SQL的单行注释(A)。

A--

B@@

C**

D&&

2.       对于多行注释,必须使用(B)符号进行注释。

A/    /   B/*   */   C--   --   D//      //

3.       用以去掉字符串尾部空格的函数是(C)。

ALTRIM        BRIGHT         CRTRIM         DSUBSTRING

4.       SQL Sever中,全局变量以( B )符号开头。

A @

B@@

C **

D &&

5.       可以用来获取指定子字符串的函数是(D)。

ALEFT

BRIGHT

CRTRIM

DSUBSTRING

6.       在应用程序中,希望判断表中某个属性信息,可以用下面哪一个函数(B)。

A@@PROCID

BCOLUMNPROPERTY

CDATABASEPERPERTYEX

DDB-NAME

二、填空题

1.Transact-SQL语言主要由数据定义语言(DDL)、数据操纵语言(DML)、数据控制语言(DCL)几部分组成。

2. 批处理是由一条或多条__Transact-SQL语句__组成的语句集,从应用程序一次性地发送到SQL Server执行。

3.Transact-SQL语句编写的过程中,可以使用__GO语句__将多条SQL语句进行分隔,两个GO之间的SQL语句可以作为一个批处理。  

4.__注释 _,也称为注解,是写在程序代码中的说明性文字,对程序的结构及功能进行文字说明。

5.可使用_CREATE FUNCTION_语句创建用户定义函数、使用_ALTER FUNCTION_语句修改用户定义函数、使用_DROP FUNCTION_语句删除用户定义函数。

6.CASE具有两种格式:一种是_简单CASE_函数,将某个表达式与一组简单表达式进行比较以确定结果;另一种是__搜索型CASE_函数,用于计算一组布尔表达式以确定结果。

7.局部变量名以_@_符号开头。

8._RETURN_语句是无条件转移语句。

三、判断题

1.DDL语言包括SELECTINSERTUPDATEDELETE命令语句。(错)

2.两个GO之间的SQL语句可以作为一个批处理。因此,GO命令标志一个批处理的结束。(对)

3.变量不是用于临时存放数据的。(错)

4.注释是程序代码中描述性的文本字符串。(对)

5. CLOSE语句可以用来从最内层的WHILE循环中退出,执行END关键字后面的语句。(错)

四、简答题

1.创建一个用户自定义函数ProductsHS,以商品条形码为参数,返回该商品的单价。并使用该函数查看商品名称是“记事本”的价格(商品表中数据如表1所示)

1

序号

商品条形码

商品名称

单价

厂家

生产日期

商品大类

商品小类

1

9787040201154

物流服务营销

22.40

高等教育出版社

2006.11.01

图书

物流

2

6931436900807

记事本

8.60

广明智业

2006.10.01

办公用品

记事本

.............

参考答案:

创建函数:

CREATE FUNCTION ProductsHS(@cn varchar(13))

RETURN TABLE

AS

(SELECT 单价 FROM 商品表

WHERE商品条形码=@cn)

GO

调用函数:

SELECT * FOROM ProductsHS(‘6931436900807’)

第7章       数据库服务器编程

一、选择题

1.       激活触发器的数据修改语句,有效选项是(B

AINSERT  BUPDATE   CDELETE  DSELECT

2.       在执行对Book表的更新操作时,如果希望不执行该操作,而是执行其他操作,则应该创建什么类型的DML触发器(D)。

AFOR                   BBEFORE             CAFTER         DINSTEAD OF

3.       一个表上可以建立多个名称不同、类型各异的触发器,每个触发器可以由三个动作来引发,但是每个触发器最多只能作用于(A)个表上。

A.一              B.二                      C.三              D.四          

4.       创建触发器需要指定的几点选项有(ABD)。

A.触发器的名称

B.在其上定义触发器的表

C.触发器将何时触发

D.激活触发器的数据修改语句

E.执行触发操作的编程语句

5.       一个存储过程最多可以具有的参数数量为(B)个。

A100              B1024            C2048              D2

6.       存储过程可以使用RETURN语句调用它的存储过程或应用程序返回一整数值,在SQL Server中,返回值为(B)时,表示存储过程成功执行。

A1                         B0                       C99                     D-1

7.       Microsoft SQL Server系统中,可以重新编译存储过程的方式是(AB)。

A.使用sp-recompile系统存储过程。

B.在CREATE PROCEDURE 语句中使用WITH RECOLPILE子句。

C.在CREATE PROCEDURE 语句中使用WITH RECOLPILE子句。

D.在EXECUTE 语句中使用WITH RECOLPILE子句。

8.       CREATE PROCEDURE 语句中,可以包括哪些语句(AC)。

ASELECT

BCREATE VIEW

CCREATE TABLE

DCREATE TRIGGER

9.       当希望执行对BOOKS表的操作时,如果该操作不执行,而是执行对PRICE 表的更新操作,则应该创建什么类型的 DML 触发器(D)。

AFOR

BBEFORE

CAFTER

DTNSTEAD OF

10.   DML触发器工作中,有可能生成的两个内存表是(AC)。

Ainserted

Bupdated

Cdeleted

Dadded

11.   关于存储过程的描述正确的一项是(C)。

A.存储过程的存在独立开表,它存放在客户端,供客户使用

B.存储过只是一些T-SQL语句的集合,不能看作SQL Server 的对象

C.存储过程可以使用控制流语句和变量,大大增强了SQr al ce

D.存储过程在调用时会自动编译,因此使用方便

12.   关于存储过程描述错误的一项是(B)。

A.存储过程可以创建数据库对象,也可以引用存储过程中创建的数据库对象,但引用前引数据库对象必须已经被创建

B.存储过程创建的临时表只能为此存储过程服务,存储过程退出时临时表仍可以存在

C.执行远程存储过程,改变远程SQLServer 2005服务器实例的事务不可以回滚

D.存储过程中的局部变量的个数只受内存空间的影响

13.   关于触发器叙述正确的是(A)。

A.触发器是自动执行的,可以在一定条件下触发

B.触发器不可以同步数据库的相关表进行级联更改

CSQL Server 2005不支持DDL触发器

D.触发器不属于存储过程

二、填空题

1.存储过程可以分为系统存储过程用户定义存储过程扩展存储过程等。

2.事务有4个特性(ACID),即原子性A)、一致性C)、隔离性I)和持久性D)。

3.使用系统存储过程 sp_helptext查看触发器的基本信息,包括触发器名称、所有者、类型及创建时间。

4.SQL Server支持3种类型的游标:Transact-SQL游标应用程序编程接口服务器游标客户端游标

5.存储过程创建完成后,可以使用EXECUTE语句来执行存储过程。

三、判断题

1.可以通过“对象资源管理器”窗口创建、修改及删除存储过程。(对)

2.存储过程是一组为了完成特定功能的Transact-SQL语句的集合,经编译后存储在数据库服务器中,返回状态值,不可以接受参数。()

四、简答题

1.简述在存储过程或触发器中使用Transact-SQL游标的典型过程。

参考答案:教材1617.3.2

2. 简述事务的四个特性。

参考答案:教材1667.4

第8章       数据库的安全管理

一、选择题

1.       固定数据库角色sysadminA)活动。

A.在数据库中有全部权限

B.可以添加或删除用户

C.可以管理全部权限、对象所有权、角色和角色成员资格

D.可以更改数据库内任何用户表中的所有数据

2.       关于登录名和用户名,下列各项表述不正确的是(C )。

A.登录是在服务器级创建的,用户是在数据库级创建的

B.创建用户时必须存在一个用户的登录

C.用户和登录必须同名

D.一个登录名可以对应多个数据库用户

3.       SQL Server的安全性管理可分为4个等级,不包括(B

A.操作系统级   B.用户级    CSQL Server   D.数据库级

4.       SQL Server实例的登录有两种验证模式:Windows 身份验证模式和(B )。

AWindows NT模式   B.混合身份验证模式    C.以上都不对

5.       下列选项不属于SQL Server 权限管理的是(B)。

A. 对象权限  B.管理员权限   C.语句权限   D.隐含权限

6.       下列选项不属于SQL Server对象权限适用的语句是(C.

ASELECT   BUPDATE  CALTER   DDELETE

7.       下列选项不属于SQL Server固定服务器权限的是(D)。

Aserveradmin   Bsysadmin   Cdiskadmin   Dpublic

8.       下列选项是基本表(TABLE)操作对象的是(B)。

ASELECT   BINDEX   CDELETE   DUPDATE

9.       固定数据库角色db_securityadmin可以在数据库中进行(C )活动。

A.在数据库中有全部权限

B.可以添加或删除用户

C.可以管理全部权限、对象所有权、角色和角色成员资格

D.可以更改数据库内任何用户表中的所有数据

10.   可以执行SQLServer系统中所有操作权限的固定服务器角色是(B)。

Abulkadmin

Bsysadmin

Csecurityadmin

Dprocessadmin

11.   不与权限管理直接有关的T-SQL语句是(D)。

AGRANT

BDENY

CREVOKE

DCREATE TABLE

二、填空题

1.使用系统存储过程   sp_addlogin  创建登录名。

2.SQL Server 2008中有两种类型的角色:服务器级别角色和固定数据库角色。

3.使用存储过程  sp_droprole  能够为当前数据库创建一个新的角色,也可以删除当前数据库中的角色。

4.数据控制语句包括:GRANTREVOKEDENY。前者用于授予权限,REVOKE语句可用于删除已授予的权限,后者可用于防止主体通过前者获得特定权限。

5. dbcreator服务器角色成员能够创建、更改、删除和还原任何数据库。

6.账户要使用系统必须  登录  ,登录名存储在master数据库的syslogins系统表中。

7. db_owner   数据库角色,数据库的所有者,能够执行数据库的所有管理操作。

三、判断题

1.可以使用存储过程中sp_adduser修改用户密码。(错)

2.可以使用存储过程中sp_defaultdb修改用户的默认数据库。(对)

3. securityadmin服务器角色成员能够管理登录名及其属性。(对)

4.默认情况下,本地管理员组的所有成员不是sysadmin固定服务器角色的成员。(错)

5.在每个数据库中,所有用户都是public角色的成员,并且不能被删除。(对)

四、简答题

1.如何创建登录名?

 参考答案:教材175-179页,8.1.1

第9章       数据库的备份、还原及数据的导入与导出

一、选择题

1.       做数据库差异备份之前,需要做(A )备份。

A.数据库完整备份           B.数据库差异备份

C.事务日志备份             D.文件和文件组备份

2.       A )最耗费时间。

A.数据库完整备份      B.数据库差异备份

C.事务日志备份        D.文件和文件组备份

3.       下列关于数据库备份的叙述错误的是(A )。

A.如果数据库很稳定就不需要经常做备份,反之要经常做备份以防数据库损坏

B.数据库备份是一项很复杂的任务,应该由专业的管理人员来完成

C.数据库备份也受到数据库恢复模式的制约

D.数据库备份策略的选择应该综合考虑各方面因素,并不是备份做得越多,越全就越好

4.       做文件及文件组备份后,最好做(C )备份。

A.数据库完整备份           B.数据库差异备份

C.事务日志备份             D.文件和文件组备份          

5.       备份数据库不仅要备份用户定义的数据库,还要备份系统数据库,这些系统数据库是(D

Amaster数据库    Bmsdb数据库

Cmodel数据库    D.都是

6.       关于SQL Server的恢复模式叙述正确的是(C )。

A.简单恢复模式支持所有的文件恢复                    

B.大容量日志模式不支持时间点恢复

C.完整恢复模式是最好的安全模式

D.一个数据库系统中最好是用一种恢复模式,以避免管理的混乱

7.       下列不是日志备份类型的是(C)

A.纯日志备份  

B.大量日志备份

C.头部日志备份

D.尾部日志备份

二、填空题

1.SQL Server 2008提供了几种数据备份方式:完整备份差异备份事务日志备份及数据库文件和文件组备份。

2.使用BACKUP DATEBASE语句可以实现数据库的备份。

3.备份设备是指备份或还原时使用的磁带机或磁盘驱动器

三、判断题

1. SQL Server 2008可以将数据库、事务日志和文件备份到磁盘或磁带设备上。(对)

2.RESTORE DATEBASE语句可以实现数据库备份。(错)

3.“大容量导出”表示将数据从SQLServer表复制到数据文件。(对)

四、简答题

1.简述数据库的几种备份方式?

参考答案:教材190-1919.1.1