Dalam SQL, selalunya perlu untuk menetapkan hasil panggilan exec kepada pembolehubah. Walaupun sintaks yang disediakan mungkin kelihatan intuitif, ia bukanlah pendekatan yang disyorkan.
Daripada menugaskan secara langsung hasil exec kepada pembolehubah, pertimbangkan alternatif berikut:
Parameter output membolehkan anda menghantar semula nilai daripada prosedur yang disimpan ke kenyataan panggilan. Dalam prosedur tersimpan, anda menentukan parameter output dan memberikannya nilai. Dalam pernyataan panggilan, anda menentukan parameter output sebagai parameter output menggunakan kata kunci OUTPUT.
Nilai pulangan prosedur tersimpan boleh digunakan untuk menunjukkan kejayaan atau kegagalan operasi itu. Anda boleh menggunakan nilai pulangan untuk menetapkan pembolehubah dalam pernyataan panggilan.
Berikut ialah contoh menggunakan parameter output untuk mencapai kefungsian yang diingini:
Prosedur Tersimpan:
CREATE PROCEDURE YourStoredProcedure ( @Param1 int, @Param2 varchar(5), @Param3 datetime OUTPUT ) AS IF @Param1 > 5 BEGIN SET @Param3 = GETDATE() END ELSE BEGIN SET @Param3 = '1/1/2010' END RETURN 0 GO
Memanggil Pernyataan:
DECLARE @OutputParameter datetime ,@ReturnValue int EXEC @ReturnValue = YourStoredProcedure 1, NULL, @OutputParameter OUTPUT PRINT @ReturnValue PRINT CONVERT(char(23), @OutputParameter, 121)
Output:
0 2010-01-01 00:00:00.000
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menetapkan Keputusan Panggilan SQL `EXEC` kepada Pembolehubah?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!