《SQL Server2005数据库应用技术》习题参考答案(4)
时间:2025-07-07
时间:2025-07-07
36、使用的索引原则 :数据库准则、查询准则 、索引列准则。 一般原则是:
● 主键列上一定要建立索引。 ● 外键列可以建索引。
● 在经常查询的字段上最好建立索引。
● 对于那些查询中很少涉及的列、重复值比较多的列不要建索引。 ● 对于定义为text,Image和Bit数据类型的列上不要建立索引。
37.什么是聚集索引?什么是非聚集索引?比较这两种索引的结构特点。
37.在聚集索引中,表中的行的物理存储顺序和索引顺序完全相同(类似于图书目录和正文内容之间的关系)。聚集索引对表的物理数据页,按列进行排序,然后再重新存储到磁盘上。 非簇索引具有与表的数据行完全分离的结构,非聚集索引的叶节点存储了组成非聚集索引的关键字值和一个指针,指针指向数据页中的数据行,该行具有与索引键值相同的列值,非聚集索引不改变数据行的物理存储顺序,因而一个表可以有多个非聚集索引。
38.如何使用CREATE INDEX语句创建索引?
38.CREATE [UNIQUE] [CLUSTERED | NONCLUSTERED ] /* 索引的类型*/
INDEX 索引名 ON {表名|视图名 } 列名 [ ASC | DESC ] [,...n])
39.简述存储过程的基本功能和特点。
39.存储过程(Stored Procedure)是一组完成特定功能的Transact-SQL语句集,经编译后存储在数据库中,用户调用过程名和给出参数来调用它们。
40.简述存储过程的创建方法和执行方法。 40.创建存储过程的语法格式:
CREATE [ PROC | PROCEDURE] 存储过程名
[ { @参数名称 参数数据类型 } [ = 参数的默认值 ] [ OUTPUT ] ] [ ,...n ]
[ WITH ENCRYPTION] [WITH RECOMPILE ] AS
sql_statement 执行存储过程的语法格式: EXEC[UTE] 存储过程名 [[@参数名=]{参数值 | @变量 [ OUTPUT ] | [默认值]}] [,...n]
41.什么是触发器,它与存储过程有什么区别与联系?
41.触发器通常可以完成一定的业务规则,用于SQL Server约束、默认值和规则的完整性检查,还可以完成难以用普通约束实现的复杂功能的限制。 触发器与存储过程的联系:触发器是一种特殊的存储过程。 触发器与存储过程的区别:存储过程需要使用EXEC命令调用存储过程名而执行。触发器是在某个指定的事件发生时被激活而自动执行。
42.SQL Server2005中的触发器可以分为哪两类?分别有什么作用?
42.DML触发器:当数据库中发生数据操作语言 (DML) 事件时将调用 DML 触发器 。