第8章存储过程的操作与管理 SQL SERVER2005入门与实例教程电子工业出版社2006
第8章 存储过程的操作与管理
存储过程概述 存储过程是为完成特定的功能而汇集在一起的一组SQL程序 语句,经编译后存储在数据库中的SQL程序。 在 SQL Server中使用存储过程而不使用存储在客户端计算 机本地的 Transact-SQL程序的优点包括: (1)存储过程已在服务器注册 2)存储过程具有安全特性(例如权限)和所有权链接,以及 可以附加到它们的证书。 (3)存储过程可以强制应用程序的安全性 (4)存储过程允许模块化程序设计 (5)存储过程是命名代码,允许延迟绑定 (6)存储过程可以减少网络通信流量 SQL SERVER2005入门与实例教程电子工业出版社2006
存储过程概述 存储过程是为完成特定的功能而汇集在一起的一组SQL程序 语句,经编译后存储在数据库中的SQL程序。 在 SQL Server 中使用存储过程而不使用存储在客户端计算 机本地的 Transact-SQL 程序的优点包括: (1)存储过程已在服务器注册。 (2)存储过程具有安全特性(例如权限)和所有权链接,以及 可以附加到它们的证书。 (3)存储过程可以强制应用程序的安全性。 (4)存储过程允许模块化程序设计。 (5)存储过程是命名代码,允许延迟绑定。 (6)存储过程可以减少网络通信流量
8.1创建存储过程 在 SQL Server中,可以使用两种方法创建存储过程: (1)使用创建存储过程模板创建存储过程; (2)利用 SQL Server管理平台创建存储过程。 当创建存储过程时,需要确定存储过程的三个组成部 分: (1)所有的输入参数以及传给调用者的输出参数 (2)被执行的针对数据库的操作语句,包括调用其他 存储过程的语句 (3)返回给调用者的状态值,以指明调用是成功还是 失败。 SQL SERVER2005入门与实例教程电子工业出版社2006
8.1 创建存储过程 在SQL Server中,可以使用两种方法创建存储过程: (1)使用创建存储过程模板创建存储过程; (2)利用SQL Server 管理平台创建存储过程。 当创建存储过程时,需要确定存储过程的三个组成部 分: (1)所有的输入参数以及传给调用者的输出参数。 (2)被执行的针对数据库的操作语句,包括调用其他 存储过程的语句。 (3)返回给调用者的状态值,以指明调用是成功还是 失败
8.1创建存储过程 CREatE ProcedUre的语法形式如下: CREATE(PROCPROCEDUREJ [schema name ] procedure name; number K@parameter[type schema name. data typel TVARYINGIdefault[[OUT[PUTILn WITH<procedure option>L.n] [FOR REPLICATION] AS k<sql statement>[[ n]<method specifier>l; procedure option>∷ TENCRYPTIONIRECOMPILE]EXECUTE AS Clause] sql statement>∷= I BEGIN] statements [ENDI] <method specifier>: :=EXTERNAL NAME assembly name class name. method_ name SQL SERVER2005入门与实例教程电子工业出版社2006
8.1 创建存储过程 •CREATE PROCEDURE的语法形式如下: CREATE {PROC|PROCEDURE} [schema_name.]procedure_name[;number] [{@parameter[type_schema_name.] data_type} [VARYING][=default][[OUT[PUT]][,...n] [WITH <procedure_option> [,...n] [FOR REPLICATION] AS {<sql_statement>[;][...n]|<method_specifier>}[;] <procedure_option> ::= [ENCRYPTION][RECOMPILE] EXECUTE_AS_Clause] <sql_statement> ::= {[BEGIN] statements [END]} <method_specifier> ::= EXTERNAL NAME assembly_name.class_name.method_name
8.1.1使用模板创建存储过程 1)在 SQL Server管理平台中,选择“视图(Vew)”菜单中的“模板资 源资源管理器( Template Explorer)’,出现“模板资源管理器( Template Explorer)”窗口,选择“存储过程”中的“创建存储过程”选项,如图8-1所 (2)在文本框中可以输入创建存储过程的 Transact SQL语句,单击“执行” 按钮,即可创建该在储讨程 Create bsste stored procedure template Drop stored procedure if it already exia SELECT ON INFORMATICN SCHEMA, ROUTINE ECIFIC NAME N<Procedure Name, sysname, proeedure Name2 EDURE <Schema Name, synase, Schena Name sysname, Procedure Me separ p2><datatype to int>"<default value tor param2,, D> BELECT 8p1, 8p2 EXECUTE Schema Nr yanase, schema Name>.<Procedure Name, ayana dure_Name>salt 图8-1创建存储过程模板 SQL SERVER2005入门与实例教程电子工业出版社2006
8.1.1 使用模板创建存储过程 (1)在SQL Server 管理平台中,选择“视图(View)”菜单中的“模板资 源资源管理器(Template Explorer)”,出现“模板资源管理器(Template Explorer)”窗口,选择“存储过程”中的“创建存储过程”选项,如图8-1所 示。 (2)在文本框中可以输入创建存储过程的Transact_SQL语句,单击“执行” 按钮,即可创建该存储过程。 图8-1 创建存储过程模板