--(1)不帶任何引數的儲存過程(儲存過程語句中含有return)
--建立儲存過程
create
procedure
testreturn
asreturn
145go
--執行儲存過程
declare
@rcint
exec
@rc=
testreturn
select
@rc--說明
--查詢結果為145
--(2)帶輸入引數的儲存過程(儲存過程語句中含有return)
--建立儲存過程
create
procedure
sp_add_table1
@in_name
varchar(100
),@in_addr
varchar(100
),@in_tel
varchar(100)as
if(@in_name=''
or@in_name
isnull
)return
1else
begin
insert
into #table1(name,addr,tel) values(@in_name,@in_addr,@in_tel
)return
0end
--執行儲存過程
--<1>執行下列,返回1
declare
@count
intexec
@count
= sp_add_table1 '','
中三路','
123456
'select
@count
--<2>執行下列,返回0
declare
@count
intexec
@count
= sp_add_table1 '','
中三路','
123456
'select
@count
--說明
--查詢結果不是0就是1
--(3)帶輸出引數的儲存過程(儲存過程中可以有return可以沒有return)
--例子a:
--建立儲存過程
create
procedure
sp_output
@output
intoutput
asset
@output
=121
return1--
執行儲存過程
--<1>執行下列,返回121
declare
@out
intexec sp_output @out
output
select
@out
--<2>執行下列,返回1
declare
@out
intdeclare
@count
intexec
@count
= sp_output @out
output
select
@count
--說明
--有return,只要查詢輸出引數,則查詢結果為輸出引數在儲存過程中最後變成的值;只要不查詢輸出引數,則查詢結果為return返回的值
--例子b:
--建立儲存過程
create
procedure
sp_output
@output
intoutput
asset
@output
=121
--執行儲存過程
--<1>執行下列,返回121
declare
@out
intexec sp_output @out
output
select
@out
--<2>執行下列,返回0
declare
@out
intdeclare
@count
intexec
@count
= sp_output @out
output
select
@count
--說明
--沒有return,只要查詢輸出引數,則查詢結果為輸出引數在儲存過程中最後變成的值;只要不查詢輸出引數,則查詢結果為0
--3.select資料集返回值
create
procedure
[dbo
].[upinformation](
@idint)as
begin
set nocount on
;select id,age from
[information
]where id =
@idgo
--儲存過程中獲得方法:(使用臨時表)
create
table
[dbo
].[temp](
[id][
bigint
]identity(1,1) not
forreplication
notnull,[
age]
[int
]not
null
)insert
[temp
]exec
[nb_order_select
]@id
– 這時
temp
就是exec執行select 後的結果集
select
*from
[temp
]drop
[temp
] — 刪除臨時表
獲取儲存過程內容 SQL server
查詢儲存過程 內容 select name 儲存過程名稱,definition 儲存過程內容 from sys.sql modules as m inner join sys.all objects as o on m.object id o.object id where o.type p and...
SqlServer如何獲取儲存過程的返回值
1.output引數返回值 1 create procedure dbo upinformation 2 age int,3 id bigint output4 5as6begin 7set nocount on 8begin 9insert into information age 10value...
SqlServer獲取儲存過程返回值的例項
sqlserver獲取儲存過程返回值的例項,需要的朋友可以參考一下 1.ouput引數返回值 複製 如下 create procedure dbo nb order insert o buyerid int o id bigint output asbegin set nocount on begi...