Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a:SQL Server
Crea e popola un cursore in base al piano di esecuzione creato da sp_cursorprepare. Questa procedura, associata a sp_cursorprepare, ha la stessa funzione di sp_cursoropen, ma è suddivisa in due fasi.
sp_cursorexecute viene richiamato specificando ID = 4 in un pacchetto TDS (Tabular Data Stream).
Convenzioni relative alla sintassi Transact-SQL
Sintassi
sp_cursorexecute prepared_handle , cursor
[ , scrollopt [ OUTPUT ]
[ , ccopt [ OUTPUT ]
[ , rowcount OUTPUT [ , bound param ] [ , ...n ] ] ] ]
[ ; ]
Argomenti
Importante
Gli argomenti per le stored procedure estese devono essere immessi nell'ordine specifico, come descritto nella sezione Sintassi. Se i parametri vengono immessi in ordine non corretto, si verifica un messaggio di errore.
prepared_handle
Valore dell'handle di istruzione preparato restituito da sp_cursorprepare. Il parametro prepared_handle è int e non può essere NULL.
cursor
Identificatore del cursore generato dall'motore di database.
cursor è un parametro obbligatorio che deve essere fornito in tutte le procedure successive che agiscono sul cursore, ad esempio sp_cursorfetch.
scrollopt
Opzione di scorrimento. Il parametro scrollopt è int, con un valore predefinito .NULL Il sp_cursorexecuteparametro scrollopt ha le stesse opzioni di valore di sp_cursoropen.
Il PARAMETERIZED_STMT valore non è supportato.
Se non viene specificato un valore scrolloptsp_cursorprepare
ccopt
Opzione del controllo della valuta.
ccopt è un parametro facoltativo che richiede un valore di input int . Il sp_cursorexecuteparametro ccopt ha le stesse opzioni di valore di sp_cursoropen.
Se non viene specificato un valore ccopt , il valore predefinito è OPTIMISTIC indipendentemente dal valore ccopt specificato in sp_cursorprepare.
conteggio righe
Parametro facoltativo che indica il numero di righe del buffer di recupero da usare con AUTO_FETCH. Il valore predefinito è 20 righe.
rowcount si comporta in modo diverso quando assegnato come valore di input rispetto a un valore restituito.
| Come valore di input | Come valore restituito |
|---|---|
Quando AUTO_FETCH viene specificato con FAST_FORWARD i cursori, il conteggio delle righe rappresenta il numero di righe da inserire nel buffer di recupero. |
Rappresenta il numero di righe nel set di risultati. Quando si specifica il valore scrolloptAUTO_FETCH, il conteggio delle righe restituisce il numero di righe recuperate nel buffer di recupero. |
bound_param
Indica l'uso facoltativo di parametri aggiuntivi.
I parametri dopo il quinto vengono passati insieme sul piano dell'istruzione come parametri di input.
Valori del codice restituito
rowcount restituisce i valori seguenti.
| valore | Descrizione |
|---|---|
-1 |
Numero di righe non note. |
-n |
Un popolamento asincrono è attivo. |
Osservazioni:
Parametri scrollopt e ccopt
scrollopt e ccopt sono utili quando i piani memorizzati nella cache vengono annullati per la cache del server, ovvero l'handle preparato che identifica l'istruzione deve essere ricompilato. I valori dei parametri scrollopt e ccopt devono corrispondere ai valori inviati nella richiesta originale a sp_cursorprepare.
PARAMETERIZED_STMT non deve essere assegnato a scrollopt.
L'impossibilità di fornire valori corrispondenti comporta la ricompilazione dei piani, negando le operazioni di preparazione ed esecuzione.
Considerazioni su RPC e TDS
Il flag di input RPC RETURN_METADATA può essere impostato su 1 per richiedere che i metadati dell'elenco di selezione cursore vengano restituiti nel flusso TDS.