1、create、alter和drop
createprocedure
usp_categorylist
asselect
categoryid,categoryname
from category
在建立儲存過程時,應該使用一致的規範來命名儲存過程,而不要使用sp_,使用sp_只會導致名稱衝突和混亂。可以使用usp_作為儲存過程名的字首,但即使不使用任何字首,也比使用sp_好。
2、返回記錄集
exec usp_categorylist
3、編譯儲存過程
exec sp_recompile usp_categorylist
4、檢視儲存過程
sp_helptext usp_categorylist
5、加密儲存過程
createprocedure
usp_categorylist
with
encryption
asselect
categoryid,categoryname
from category
6、輸入引數
createprocedure
usp_categorylist
(
@categoryid
int)
asselect
categoryid,categoryname
from
category
where categoryid =
@categoryid
exec usp_categorylist 1
execstoredprocedure
@parameter1=n,
@parameter2='
n'
7、引數的預設值
呼叫儲存過程時,必須為所有引數指定值,除非建立引數有預設值。
createprocedure
storedprocedure
(
@variable datatype =
defaultvalue
)
8、輸出引數
使用output定義輸出引數,在不需要返回整個記錄集時,輸出引數非常適合用於返回單個資料單元。返回單行資料時,使用輸出引數比使用記錄集快得多。
createprocedure
usp_categorylist
(
@categoryid
int,
@categoryname
varchar(50
) output)as
select
@categoryname
=categoryname
from
category
where categoryid =
@categoryid
declare@categoryname
varchar(50
)exec usp_categorylist @categoryid
=1, @categoryname
output
@categoryname
9、return關鍵字
return關鍵字無條件地終止儲存過程的執行,並向呼叫它的批處理或客戶返回乙個值。
使用返回值來指出執行是失敗還是成功,而不是使用它返回實際資料。如果只需要返回乙個值而不是這個資料集,可以使用輸出引數。
exec@intlocalvariable
= storedprocedurename
createprocedure
usp_isitok
(
@okvarchar(10
) )as
if@ok='
ok'return
0else
return
-100
declare@returncode
intexec
@returncode
= usp_isitok 'ok'
@returncode
exec
@returncode
= usp_isitok '
notok
@returncode
MSSQLSERVER 儲存過程
系統儲存過程 列出sql server例項中的資料庫 sp databases 返回sql server 資料庫閘道器或基礎資料來源的特性名和匹配值的列表 sp server info 返回當前環境中的儲存過程列表 sp stored procedures 返回當前環境下可查詢的物件的列表 任何可出...
MS SQLSERVER通用儲存過程分頁
最近在面試的時候,遇到個奇葩的禿頂老頭面試官。問 寫過儲存過程分頁嗎?答 沒寫過,但是我知道分頁儲存的原理,我自己也寫過,只是在工作中沒寫過。問 那你這麼多年工作中就沒寫過嗎?答 的確沒寫過,因為專案資料量都特別小。然後,這奇葩就起身就要走人了,連個招呼都沒有。想我面試了這麼多公司,這種奇葩面試官,...
MS SQL Server儲存過程的優點有哪些呢
1.儲存過程只在創造時進行編譯即可,以後每次執行儲存過程都不需再重新編譯,而我們通常使用的sql語句每執行一次就編譯一次,所以使用儲存過程可提高資料庫執行速度。2.經常會遇到複雜的業務邏輯和對資料庫的操作,這個時候就會用sp來封裝資料庫操作。當對資料庫進行複雜操作時 如對多個表進行update,in...