Bagikan melalui


sp_cursorexecute (T-SQL)

Berlaku untuk: SQL Server

Membuat dan mengisi kursor berdasarkan rencana eksekusi yang dibuat oleh sp_cursorprepare. Prosedur ini, ditambah dengan , memiliki fungsi yang sama dengan sp_cursorpreparesp_cursoropen, tetapi dibagi menjadi dua fase. sp_cursorexecute dipanggil dengan menentukan ID = 4 dalam paket aliran data tabular (TDS).

Konvensi sintaks transact-SQL

Sintaks

sp_cursorexecute prepared_handle , cursor
    [ , scrollopt [ OUTPUT ]
    [ , ccopt [ OUTPUT ]
    [ , rowcount OUTPUT [ , bound param ] [ , ...n ] ] ] ]
[ ; ]

Argumen

prepared_handle

Nilai handel pernyataan yang disiapkan dikembalikan oleh sp_cursorprepare. Parameter prepared_handle int, dan tidak boleh NULL .

Kursor

Pengidentifikasi kursor yang dihasilkan Mesin Database. kursor adalah parameter yang diperlukan yang harus disediakan pada semua prosedur berikutnya yang bertindak berdasarkan kursor, seperti sp_cursorfetch.

scrollopt

Opsi gulir. Parameter scrollopt adalah int, dengan default NULL. Parameter sp_cursorexecute scrollopt memiliki opsi nilai yang sama dengan sp_cursoropen.

Nilai PARAMETERIZED_STMT tidak didukung.

Jika nilai scrollopt tidak ditentukan, nilai default terlepas KEYSET dari nilai scrollopt yang ditentukan dalam sp_cursorprepare.

ccopt

Opsi kontrol mata uang. ccopt adalah parameter opsional yang memerlukan nilai input int . Parameter sp_cursorexecuteccopt memiliki opsi nilai yang sama dengan sp_cursoropen.

Jika nilai ccopt tidak ditentukan, nilai default terlepas OPTIMISTIC dari nilai ccopt yang ditentukan dalam sp_cursorprepare.

rowcount

Parameter opsional yang menandakan jumlah baris buffer pengambilan untuk digunakan dengan AUTO_FETCH. Defaultnya adalah 20 baris. rowcount bertingkah berbeda saat ditetapkan sebagai nilai input versus nilai pengembalian.

Sebagai nilai input Sebagai nilai yang dikembalikan
Ketika AUTO_FETCH ditentukan dengan FAST_FORWARD kursor, rowcount mewakili jumlah baris yang akan ditempatkan ke dalam buffer pengambilan. Mewakili jumlah baris dalam tataan hasil. Saat nilai scrollopt AUTO_FETCH ditentukan, rowcount mengembalikan jumlah baris yang diambil ke dalam buffer pengambilan.

bound_param

Menandakan penggunaan opsional parameter tambahan.

Parameter apa pun setelah kelima diteruskan ke rencana pernyataan sebagai parameter input.

Mengembalikan nilai kode

rowcount mengembalikan nilai berikut.

Nilai Deskripsi
-1 Jumlah baris yang tidak diketahui.
-n Populasi asinkron berlaku.

Keterangan

Parameter scrollopt dan ccopt

scrollopt dan ccopt berguna ketika rencana cache didahulukan untuk cache server, yang berarti bahwa handel yang disiapkan mengidentifikasi pernyataan harus dikompresi ulang. Nilai parameter scrollopt dan ccopt harus cocok dengan nilai yang dikirim dalam permintaan asli ke sp_cursorprepare.

PARAMETERIZED_STMT tidak boleh ditetapkan ke scrollopt.

Kegagalan untuk memberikan nilai yang cocok menghasilkan kompilasi ulang rencana, meniru operasi persiapan dan eksekusi.

Pertimbangan RPC dan TDS

Bendera input RPC RETURN_METADATA dapat diatur ke 1 untuk meminta agar kursor memilih metadata daftar dikembalikan di aliran TDS.