1
数据库技术及应用
1.10.8 习 题 7

习 题 7

一、选择题

1.下列关于索引描述中,( )是不正确的。

A.聚集索引是指数据行的物理存储顺序与索引顺序完全相同,每个表只能有一个

B.非聚集索引具有完全独立于数据行的结构,索引不改变表中数据行的物理存储顺序

C.唯一索引可以确保表中数据行的唯一性

D.聚集索引和非聚集索引原理完全相同,但聚集索引每个表只能有一个,而非聚集索引每个表可以有多个

2.在SQL Server2008中,用户存储过程只能定义在当前数据库中,创建存储过程的TransacT-SQL语句是( )。

A.CREATEPROCEDURE B.ALTERPROCEDURE

C.UPDATEPROCEDURE D.DROPPROCEDURE

3.在调用SQL Server2008的存储过程时,若调用语句是批处理中的第一条语句,则可以省略( )关键字。

A.CALL B.EXECUTE C.SHELL D.COM

二、填空题

1.视图是一种_______表,数据库中只存放视图的_______。

2.触发器是一种特殊的_______,基于表而创建,主要用来保证数据的完整性。

3.创建触发器的语句关键字为_______。

4.在SQL Server中,通常不需要用户建立索引,而是通过使用_______约束和_______约束,由系统自动建立索引。

5.在SQL Server中,每个表只能建立_______个聚集索引,_______个非聚集索引。

6.SQL Server中引入索引主要是为了加快_______速度。

7.从是否改变基本表记录的物理位置角度可将索引分为_______和_______索引两类。

8.触发器是一种特殊的存储过程,可以在对一个表上进行_______、_______和_______操作中的任一种或几种操作时被自动调用执行。

9.SQL Server2008中DML触发器可分为INSERT触发器、UPDATE触发器和_______3种。

10.删除自定义数据类型的命令是_______。

三、简答题

1.什么是索引?简述聚集索引和非聚集索引的区别。

2.简述视图基本概念及使用视图的好处。

3.inserted、deleted表分别有什么作用?

4.创建存储过程之前应该考虑什么?

四、实训题

1.创建存储过程stu_info,执行时通过输入姓名,可以查询该姓名对应的学生的各科成绩。

2.为Student数据库中SC表建立一个名为insert_g_tr的INSERT触发器,当用户向SC表中插入记录时,如果插入的是在Course_info表中没有的课程编号,则提示用户不能插入记录,否则提示记录插入成功。