Bagikan melalui


sp_prepexec (T-SQL)

Berlaku untuk:SQL Server

Menyiapkan dan menjalankan pernyataan Transact-SQL berparameter. sp_prepexec menggabungkan fungsi sp_prepare dan sp_execute. Tindakan ini dipanggil oleh ID = 13 dalam paket aliran data tabular (TDS).

Konvensi sintaks transact-SQL

Sintaks

sp_prepexec handle OUTPUT , params , stmt
    [ , bound param ] [ , ...n ]
[ ; ]

Argumen

Penting

Argumen untuk prosedur tersimpan yang diperluas harus dimasukkan dalam urutan tertentu seperti yang dijelaskan di bagian Sintaks. Jika parameter dimasukkan di luar urutan, pesan kesalahan terjadi.

menangani

Pengidentifikasi handel yang dihasilkan SQL Server. handle adalah parameter yang diperlukan dengan nilai pengembalian int .

params

Mengidentifikasi pernyataan berparameter. Definisi param variabel digantikan untuk penanda parameter dalam pernyataan. param adalah parameter yang diperlukan yang memanggil nilai input ntext, nchar, atau nvarchar . NULL Masukkan nilai jika pernyataan tidak diparameterkan.

stmt

Menentukan kumpulan hasil kursor. Parameter stmt diperlukan dan memanggil nilai input ntext, nchar, atau nvarchar .

bound_param

Menandakan penggunaan opsional parameter tambahan. bound_param memanggil nilai input dari jenis data apa pun untuk menunjuk parameter tambahan yang digunakan.

Contoh

Contoh berikut menyiapkan dan menjalankan pernyataan sederhana:

DECLARE @Out AS INT;

EXECUTE sp_prepexec
    @Out OUTPUT, N'@P1 nvarchar(128), @P2 nvarchar(100)',
    N'SELECT database_id, name
      FROM sys.databases
      WHERE name=@P1 AND state_desc = @P2',
    @P1 = 'tempdb',
    @P2 = 'ONLINE';

EXECUTE sp_unprepare @Out;