Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Menetapkan Hasil Panggilan EXEC kepada Pembolehubah SQL?

Bagaimana untuk Menetapkan Hasil Panggilan EXEC kepada Pembolehubah SQL?

Mary-Kate Olsen
Mary-Kate Olsenasal
2025-01-04 12:46:39358semak imbas

How to Assign the Result of an EXEC Call to a SQL Variable?

Menetapkan Keputusan Exec kepada Pembolehubah SQL

Soalan:
Bagaimana anda boleh menetapkan hasil panggilan exec kepada pembolehubah dalam SQL ? Sebagai contoh, jika anda mempunyai prosedur tersimpan bernama up_GetBusinessDay yang mengembalikan satu tarikh, bolehkah anda menetapkan keputusan menggunakan pernyataan seperti:

exec @PreviousBusinessDay = dbo.up_GetBusinessDay @Date, -1

Jawapan:

Menggunakan parameter output ialah pendekatan yang diutamakan daripada memberikan hasil terus kepada pembolehubah. Berikut ialah contoh mencipta prosedur tersimpan dengan parameter output:

CREATE PROCEDURE YourStoredProcedure 
(
    @Param1 int
   ,@Param2 varchar(5)
   ,@Param3 datetime OUTPUT
)
AS
    IF ISNULL(@Param1, 0) > 5
    BEGIN
        SET @Param3 = GETDATE()
    END
    ELSE
    BEGIN
        SET @Param3 = '1/1/2010'
    END
    
    RETURN 0
GO

Untuk memanggil prosedur tersimpan ini dan menggunakan parameter output:

DECLARE @OutputParameter datetime
       ,@ReturnValue     int

EXEC @ReturnValue = YourStoredProcedure 1, NULL, @OutputParameter OUTPUT

PRINT @ReturnValue
PRINT CONVERT(char(23), @OutputParameter, 121)

Ini akan menghasilkan:

0
2010-01-01 00:00:00.000

Atas ialah kandungan terperinci Bagaimana untuk Menetapkan Hasil Panggilan EXEC kepada Pembolehubah SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn