Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Database SQL di Microsoft Fabric
Keluar tanpa syarat dari kueri atau prosedur. RETURN segera dan lengkap dan dapat digunakan kapan saja untuk keluar dari prosedur, batch, atau blok pernyataan. Pernyataan yang mengikuti RETURN tidak dijalankan.
Syntax
RETURN [ integer_expression ]
Arguments
integer_expression
Adalah nilai bilangan bulat yang dikembalikan. Prosedur tersimpan dapat mengembalikan nilai bilangan bulat ke prosedur panggilan atau aplikasi.
Jenis Kembalian
Secara opsional mengembalikan int.
Note
Kecuali didokumentasikan sebaliknya, semua prosedur tersimpan sistem mengembalikan nilai 0. Ini menunjukkan keberhasilan dan nilai bukan nol menunjukkan kegagalan.
Remarks
Saat digunakan dengan prosedur tersimpan, RETURN tidak dapat mengembalikan nilai null. Jika prosedur mencoba mengembalikan nilai null (misalnya, menggunakan RETURN @status saat @status NULL), pesan peringatan dihasilkan dan nilai 0 dikembalikan.
Nilai status pengembalian dapat disertakan dalam pernyataan Transact-SQL berikutnya dalam batch atau prosedur yang menjalankan prosedur saat ini, tetapi harus dimasukkan dalam formulir berikut: EXECUTE @return_status = <procedure_name>.
Examples
A. Mengembalikan dari prosedur
Contoh berikut menunjukkan apakah tidak ada nama pengguna yang ditentukan sebagai parameter saat findjobs dijalankan, RETURN menyebabkan prosedur keluar setelah pesan dikirim ke layar pengguna. Jika nama pengguna ditentukan, nama semua objek yang dibuat oleh pengguna ini dalam database saat ini diambil dari tabel sistem yang sesuai.
CREATE PROCEDURE findjobs @nm sysname = NULL
AS
IF @nm IS NULL
BEGIN
PRINT 'You must give a user name'
RETURN
END
ELSE
BEGIN
SELECT o.name, o.id, o.uid
FROM sysobjects o INNER JOIN master..syslogins l
ON o.uid = l.sid
WHERE l.name = @nm
END;
B. Mengembalikan kode status
Contoh berikut memeriksa status untuk ID kontak tertentu. Jika negara bagian adalah Washington (WA), status 1 dikembalikan. Jika tidak, 2 dikembalikan untuk kondisi lain (nilai selain WA untuk StateProvince atau ContactID yang tidak cocok dengan baris).
USE AdventureWorks2022;
GO
CREATE PROCEDURE checkstate @param VARCHAR(11)
AS
IF (SELECT StateProvince FROM Person.vAdditionalContactInfo WHERE ContactID = @param) = 'WA'
RETURN 1
ELSE
RETURN 2;
GO
Contoh berikut menunjukkan status pengembalian dari menjalankan checkstate. Yang pertama menunjukkan kontak di Washington; yang kedua, kontak tidak di Washington; dan yang ketiga, kontak yang tidak valid. Variabel @return_status lokal harus dideklarasikan sebelum dapat digunakan.
DECLARE @return_status INT;
EXEC @return_status = checkstate '2';
SELECT 'Return Status' = @return_status;
GO
Berikut set hasilnya.
Return Status
-------------
1
Jalankan kueri lagi, menentukan nomor kontak yang berbeda.
DECLARE @return_status INT;
EXEC @return_status = checkstate '6';
SELECT 'Return Status' = @return_status;
GO
Berikut set hasilnya.
Return Status
-------------
2
Jalankan kueri lagi, tentukan nomor kontak lain.
DECLARE @return_status INT
EXEC @return_status = checkstate '12345678901';
SELECT 'Return Status' = @return_status;
GO
Berikut set hasilnya.
Return Status
-------------
2
Lihat Juga
PROSEDUR ALTER (Transact-SQL)
MEMBUAT PROSEDUR (Transact-SQL)
DECLARE @local_variable (Transact-SQL)
JALANKAN (Transact-SQL)
SET @local_variable (Transact-SQL)
LEMPAR (Transact-SQL)