-1

我是SQL Server的新手。目前我的工作在現有的源代碼,我有一些點不清楚的存儲過程存儲過程的默認返回值

爲例子:

My_Stored_Procedure_1

CREATE PROC [dbo].[My_Stored_Procedure_1] 
    @ID INT, 
    @DATE DATETIME 
AS 
BEGIN 
    UPDATE query... 
    PRINT 'ID is ' + CAST(@ID AS VARCHAR(10)) 
END 

My_Stored_Procedure_2

CREATE PROC [dbo].[My_Stored_Procedure_2] 
    @RESULT INT 
AS 
BEGIN 
    EXEC @RESULT = My_Stored_Procedure_1 // Unclear point 
END 

我的問題是,我沒有看到任何返回值ue從My_Stored_Procedure_1,那麼什麼會返回@RESULT變量?也許已執行的存儲過程的默認返回值?

非常感謝。

+0

在SP 2中,只需在'EXEC @RESULT = My_Stored_Procedure_1'下面添加'SELECT @ RESULT'並查看返回的結果 –

回答

1

@Result將具有執行存儲過程My_Stored_Procedure_2時傳遞的默認值。

語句EXEC @RESULT = My_Stored_Procedure_1將以錯誤執行並終止My_Stored_Procedure_2的執行,因爲您在調用此函數時沒有將兩個輸入參數傳遞給My_Stored_Procedure_1 sp。

+0

抱歉,輸入錯誤:P – Xitrum