sp_cursoroption (Transact-SQL)
Imposta le opzioni del cursore o restituisce informazioni sul cursore create dalla stored procedure sp_cursoropen. sp_cursoroption viene richiamata specificando ID = 8 in un pacchetto del flusso TDS.
Convenzioni della sintassi Transact-SQL
Sintassi
sp_cursoroption cursor, code, value
Argomenti
cursor
Valore dell'handle generato da SQL Server e restituito dalla stored procedure sp_cursoropen. Per l'esecuzione di cursor, è richiesto un valore di input int.code
Consente di specificare i vari fattori dei valori restituiti del cursore. code richiede uno dei valori di input int seguenti:Valore
Nome
Descrizione
0x0001
TEXTPTR_ONLY
Restituisce il puntatore di testo, anziché i dati effettivi, per determinate colonne di tipo text o image designate.
TEXTPTR_ONLY consente l'utilizzo dei puntatori di testo come handle per gli oggetti blob che potranno essere recuperati o aggiornati in modo selettivo in un secondo momento utilizzando Transact-SQL o funzionalità DBLIB (ad esempio Transact-SQL READTEXT o DBLIB DBWRITETEXT).
Se viene assegnato il valore "0", tutte le colonne di tipo text e image nell'elenco di selezione restituiranno puntatori di testo anziché dati.
0x0002
CURSOR_NAME
Assegna il nome specificato in value al cursore che, a sua volta, consente a ODBC di utilizzare istruzioni Transact-SQL UPDATE/DELETE posizionate sui cursori aperti tramite sp_cursoropen.
La stringa può essere specificata come qualsiasi tipo di dati Unicode o character.
Poiché, per impostazione predefinita, le istruzioni Transact-SQL UPDATE/DELETE posizionate agiscono sulla prima riga, nel caso di un cursore con un numero elevato di record è consigliabile posizionare il cursore utilizzando sp_cursor SETPOSITION prima di eseguire l'istruzione UPDATE/DELETE posizionata.
0x0003
TEXTDATA
Restituisce i dati effettivi, anziché il puntatore di testo, per determinate colonne di tipo text o image in recuperi successivi, ovvero annulla l'effetto di TEXTPTR_ONLY.
Se per una colonna specifica è abilitato TEXTDATA, la riga viene nuovamente recuperata o aggiornata e può quindi essere nuovamente impostata su TEXTPTR_ONLY. Analogamente a quanto accade per TEXTPTR_ONLY, il parametro di valore è un intero che specifica il numero di colonna e un valore zero restituisce tutte le colonne di tipo text o image.
0x0004
SCROLLOPT
Opzione di scorrimento. Per ulteriori informazioni, vedere "Valori dei codici restituiti" più avanti in questo argomento.
0x0005
CCOPT
Opzioni del controllo della concorrenza. Per ulteriori informazioni, vedere "Valori dei codici restituiti" più avanti in questo argomento.
0x0006
ROWCOUNT
Numero di righe correntemente nel set di risultati.
[!NOTA]
È possibile che ROWCOUNT sia modificato rispetto al valore restituito da sp_cursoropen, se viene utilizzato il popolamento asincrono. Se il numero di righe non è noto, viene restituito -1.
value
Definisce il valore restituito da code. value è un parametro obbligatorio che richiede un valore di input 0x0001, 0x0002 o 0x0003 per code.[!NOTA]
Il valore 2 per code indica un tipo di dati stringa. Qualsiasi altro valore di code utilizzato come input o restituito da value è un intero.
Valori restituiti
Il parametro value potrebbe restituire uno dei valori di code seguenti.
Valore restituito |
Descrizione |
---|---|
0x0004 |
SCROLLOPT |
0X0005 |
CCOPT |
0X0006 |
ROWCOUNT |
Il parametro value restituisce uno dei valori di SCROLLOPT seguenti.
Valore restituito |
Descrizione |
---|---|
0x0001 |
KEYSET |
0x0002 |
DYNAMIC |
0x0004 |
FORWARD_ONLY |
0x0008 |
STATIC |
Il parametro value restituisce uno dei valori di CCOPT seguenti.
Valore restituito |
Descrizione |
---|---|
0x0001 |
READ_ONLY |
0x0002 |
SCROLL_LOCKS |
0x0004 o 0x0008 |
OPTIMISTIC |