*儲存過程
1.返回值
create proc example4
as begin
declare @返回值 int
select @返回值=sum(庫存量) from 產品
return @返回值
endgo 接受這個返回值必須要用變數來接收,如:
declare @接收值 int
exec @接收值 = example4
print @接收值
注意:return 返回的是整數,output可以返回任何資料。
2.注意點
呼叫儲存過程返回影響了多少行記錄的語句。然而有些時候,並不希望返回這些資訊,以免干擾應用程式的執行,也可以減少頻寬,此 時可以將影響的行數資訊關閉,關閉方法為:
set nocount on
3.儲存過程的巢狀
在乙個儲存過程中還可以執行另乙個儲存過程,稱之為巢狀。儲存過程可以多次巢狀,最多可以巢狀到32層。如果超過 32層的巢狀將會導致整個呼叫鏈失敗。正在執行的儲存過程的當前巢狀層數可以使用@@nestlevel來檢視。
4.sp_helptext 儲存過程名
這個方法可以用來檢視當前儲存過程的源**
5.加密儲存過程
create proc example8
@類別名稱 nvarchar(15)
with excryption
as 6.建立儲存過程組
create proc example9;1
as select * from類別
go create proc example9;2
as select * from類別
go 呼叫的時候也是 exec pro example9;2
7.儲存過程中的string
@p varchar(25)//注意用varchar
*儲存過程求三個數中的最大值
drop proc getmax
gocreate proc getmax
( @a int,
@b int,
@c int,
@returnvalue int output
)as
begin
select @returnvalue=cast(max(b) as int) from (select @a as b union select @b union select @c)a
endgo
declare @abc int
exec getmax 1,2,32,@abc output
select @abc
SQL儲存過程
什麼是儲存過程呢?定義 將常用的或很複雜的工作,預先用sql語句寫好並用乙個指定的名稱儲存起來,那麼以後要叫資料庫提供與已定義好的儲存過程的功能相同的服務時,只需呼叫execute,即可自動完成命令。講到這裡,可能有人要問 這麼說儲存過程就是一堆sql語句而已啊?microsoft公司為什麼還要新增...
sql儲存過程
概念 sql server提供了一種方法,它可以將一些固定的操作集中起來由sql server資料庫伺服器來完成,以實現某個任務,這種方法就是儲存過程。儲存過程是sql語句和可選控制流語句的預編譯集合,儲存過程在資料庫中可由應用程式通過乙個呼叫執行,而且允許使用者申明變數 有條件的執行以及其它強大的...
SQL儲存過程
在大型資料庫系統中,儲存過程和觸發器具有很重要的作用。無論是儲存過程還是觸發器,都是sql 語句和流程控制語句的集合。就本質而言,觸發器也是一種儲存過程。儲存過程在運算時生成執行方式,所以,以後對其再執行時其執行速度很快。sql server 2000 不僅提供了使用者自定義儲存過程的功能,而且也提...