第九章存储过程与触发器 存储过程的基本操作执行 执行待参数的存储过程 对存储在服务器上的存储过程,可以使用 EXECUTE命令或其名称执行它,其 语法格式如下: I EXEC IUTE I fI areturn status= procedure name number j I Parameter= value @variable I OUTPUTII DEFAULT I 其中: 如果存储过程是批处理中的第一条语句, EXECUTE命令可以省略,可以使 用存储过程的名字执行该存储过程。 @return status:是一个可选的整型变量,用来保存存储过程的返回状态。 parameter:存储过程的参数 例如:执行存储过程: EXEC XIBU INFOR“01
第九章 存储过程与触发器 ❖ 存储过程的基本操作---执行 执行待参数的存储过程 对存储在服务器上的存储过程,可以使用EXECUTE命令或其名称执行它,其 语法格式如下: [ EXEC [ UTE ] ] { [ @return_status = ] procedure_name [number ] } [ [ @parameter = ] { value | @variable [ OUTPUT ] | [ DEFAULT ] ] [ ,...n ] 其中: 如果存储过程是批处理中的第一条语句,EXECUTE命令可以省略,可以使 用存储过程的名字执行该存储过程。 @return_status:是一个可选的整型变量,用来保存存储过程的返回状态。 @parameter:存储过程的参数。 例如:执行存储过程: EXEC XIBU_INFOR ‘01’
第九章存储过程与触发器 存储过程的基本操作创建 例: use pubs go create procedure title sum @title varchar(40)=4%', @sum money output select 'title name=title from titles where title like atitle select( @sum=sum(price) from titles where title like atitle 0
第九章 存储过程与触发器 ❖ 存储过程的基本操作---创建 例: use pubs go create procedure title_sum @title varchar(40)=‘%’ , @sum money output as select ‘title name’=title from titles where title like @title select @sum=sum(price) from titles where title like @title go
第九章存储过程与触发器 存储过程的基本操作执行 执行: declare (atotalcost money execute title sum 'the%, @totalcost output f atotalcost>=200 begin select‘ the total cost of these title is S”+ rtrim( cast( @totalcost as varchar(20))) 注意: 必须在 create procedure和 execute语句中都指定 output关键字 如果 outpu关键字在存储过程执行过程中被忽略了,存储过程仍然执 行,但是他将会产生一个错误状态
第九章 存储过程与触发器 ❖ 存储过程的基本操作---执行 执行: declare @totalcost money execute title_sum ‘the%’,@totalcost output if @totalcost>=200 begin select ‘the total cost of these title is $’+ rtrim ( cast ( @totalcost as varchar(20) ) ) 注意: 必须在create procedure 和 execute 语句中都指定output关键字。 如果output关键字在存储过程执行过程中被忽略了,存储过程仍然执 行,但是他将会产生一个错误状态