server sql 將存儲過程執行的結果保存到表變量


declare @table table (
[SEQ] [INT] NOT NULL,
[MTIME] [DATETIME] NOT NULL,
[ISVALID] [NUMERIC](1, 0) NOT NULL ,
[P_SEQ] [INT] NOT NULL,
[ISS_TYPE] [INT] NOT NULL,
[SEQUENCE] [INT] NOT NULL,
[LOCK_OBJ_NAME] [VARCHAR](100) NULL,
[LOCK_OBJ_CODE] [INT] NULL,
[LOCK_CLS] [INT] NULL,
[LOCK_VOL] [NUMERIC](18, 4) NULL,
[LOCK_BEGIN] [DATETIME] NULL,
[LOCK_PERIOD] [NUMERIC](7, 2) NULL,
[LOCK_END] [DATETIME] NULL,
[LOCK_OBJ_CODE_MARK] [INT] NULL,
[ACT_END_DATE] [DATETIME] NULL,
[ACT_LOCK_VOL] [NUMERIC](18, 4) NULL,
[REMARK] [VARCHAR](400) NULL,
[IF_UNLTD] [INT] NULL,
[TOT_LOCK_VOL] [NUMERIC](18, 4) NULL,
[C_SEQ] [INT] NULL
)
insert into @table

exec tran_C_C..C_STK_LIST_RESULT_2_C_STK_ISS_DETAIL 4127

 

參考網址:https://blog.csdn.net/easyboot/article/details/78999591

定義一個存儲過程如下:

 create   proc   [ dbo ] . [my test1 ]
 @id   int
 as
 select   1   as  id, ' abc '   as  name  union   all  
 select   @id   as  id, ' bcd '   as  name

返回兩行數據.
現在想用SQL語句來調用這個存儲過程,並把他返回的表放入變量中.可以如下做:

 declare     @table     table (id    int ,name  varchar ( 50 )) -- 定義表變量來存放存儲過程返回的內容
 insert    into   @table   exec  test1  2 -- 將存儲過程執行的結果放入表變量中
 select   *
 from   @table      -- 查看表變量中的結果

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM