SQL 存儲過程里調用另一個存儲過程


由於創建了一個存儲過程,並且要在另一個存儲過程里調用這個存儲過程所以在網上找了一下相關的代碼,現在總結一下,防止以后還會用到

由於這次我寫的存儲過程只需要返回一個求和的結果,所以我使用了output 參數,即執行了存儲過程以后返回一個值

具體代碼如下:

CREATE PROCEDURE [dbo].[t1]
 @tes1 float outPut
AS
BEGIN
 select @tes1=(select  top 1 id from tb1)
END

調用上面的存儲過程

CREATE PROCEDURE [dbo].[t2]
AS
BEGIN
 declare @tes1 float
 exec t1 @tes1 output
 select @tes1
END
另外一種獲取在存儲過程里調用另一個存儲過程的結果集的方法就是創建一個臨時表,只要這個臨時表的結構和執行存儲過程后的結果

一樣就可以,如果返回的是一個值就用 insert  into #時表名 exec 存儲過程名

PS:如果要向調用的數據庫傳入參數,可以直接將將參數放到要執行的存儲過程后面就可以了


免責聲明!

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



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