怎麼把儲存過程返回值結果集 表 放置在臨時表中

2021-09-08 14:47:51 字數 2186 閱讀 3060

經常會遇見把儲存過程的返回值放置到定義的臨時表中,

現在先建立乙個儲存過程:

1

create

proc

[dbo

].[usp_getorderinfo]2

@customerid

nchar(5),3

@startdate

datetime,4

@enddate

datetime,5

@rowsaffect

intoutput6as

7begin

8set nocount on;9

declare

@err

int;

10select oo.customerid,oo.employeeid,oo.orderdate,oo.shipname from orders oo where oo.orderdate>=

convert(varchar(10),@startdate,120

) 11

and oo.orderdate <=

convert(varchar(10),@enddate,120) and oo.customerid =

@customerid;12

set@rowsaffect

=@@rowcount;13

set@err

=@@error;14

return

@err;15

end

現在我們呼叫剛剛建立的儲存過程:

1

declare

@customerid

nchar(5);2

declare

@startdate

datetime;3

declare

@enddate

datetime;4

declare

@rowsaffect

int;

5declare

@aint;6

set@customerid='

alfki';

7set

@startdate='

1900-01-01';

8set

@enddate='

2000-01-01';

9exec

@a= getorderinfo @customerid,@startdate,@enddate,@rowsaffect output;

此時可以發現,sql  視窗下方結果集有2個視窗,乙個是執行此儲存過程返回的結果集,乙個是儲存過程的輸出引數和返回值;

現在我們想把結果集放到臨時表中:

第一步建立臨時表:

1

create

table

#customers

2 (customerid nchar(5

),3 employeeid int

,4 orderdate datetime

,5 shipname nvarchar(40

)6 )

呼叫段:

1

declare

@customerid

nchar(5);2

declare

@startdate

datetime;3

declare

@enddate

datetime;4

declare

@rowsaffect

int;

5declare

@aint;6

set@customerid='

alfki';

7set

@startdate='

1900-01-01';

8set

@enddate='

2000-01-01';

9insert

into

#customers(customerid,employeeid,orderdate,shipname)

10exec

@a= getorderinfo @customerid,@startdate,@enddate,@rowsaffect

output;

11select

@rowsaffect ,@a

就這樣就ok啦!

儲存過程返回值

alter procedure dbo.spdelstudentbyid id int,result int output parameter1 int 5,parameter2 datatype output asset nocount on 不返回計數當 set nocount 為 on 時,不...

儲存過程 返回值

返回值 儲存過程的返回值 使用 return 語句指定儲存過程的返回 如果返回值在 1到 99之間,表示沒有成功執行,可以通過判斷返回值來進行相應的處理。可以用return語句將大於0或者小於 99的整數作為自定義返回值,來表示不同的執行結果。典型 declare result int execut...

把儲存過程結果集插入臨時表

使用sp helpserver 顯示可用的伺服器。exec sp helpserver 開啟伺服器的 data access 屬性 exec sp serveroption 伺服器名 data access true go 將儲存過程結果集插入臨時表 select into temp from op...