Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Bagaimana cara mengatur hasil prosedur tersimpan exec ke variabel?

Alih-alih:

SET @S=EXEC spGetNthNo @a,@d,@n

Anda membutuhkan:

EXEC @S = spGetNthNo @a,@d,@n

Dan kemudian dalam prosedur, Anda memerlukan sesuatu seperti:

RETURN 100

atau:

RETURN @x

untuk nilai yang Anda inginkan untuk @S setelah prosedur dijalankan.

Anda juga dapat menggunakan parameter keluaran. Contoh gabungan:

IF OBJECT_ID('tempdb..#example') IS NOT NULL DROP PROCEDURE #example
GO

CREATE PROCEDURE #example
  @output_param INT OUTPUT
AS BEGIN
   SET @output_param = 100
   RETURN 200
END
GO

DECLARE @return INT, @param INT
EXEC @return = #example @output_param = @param OUTPUT
SELECT @return as [return value], @param as [output parameter]


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kesalahan SQL Server 1934 terjadi pada INSERT ke tabel dengan kolom yang dihitung PHP/PDO

  2. Buat Pemicu "Alih-alih" di SQL Server

  3. Mengganti karakter dalam string berdasarkan baris dalam tabel sql

  4. Bisakah saya membuat serial data datetime JSON dalam kueri SQL Server 2008

  5. Menangani masalah konkurensi SQL Server