Per ulteriori informazioni sui cursori, anche dare un’occhiata al gratis query SQL di formazione forniti da Steve Stedman.
In SQL Server il cursore è uno strumento che viene utilizzato per iterare su un set di risultati o per scorrere ogni riga di un set di risultati una riga alla volta. Potrebbe non essere il modo migliore per lavorare con un set di dati, ma se è necessario eseguire il loop row agonizing row (RBAR) in uno script T-SQL, un cursore è un modo per farlo.,
Nota: se si è nuovi a SQL Server e si proviene da uno sfondo Oracle, è necessario sapere che i cursori su SQL Server sono diversi da quelli su Oracle.
Prima di creare il cursore, inizieremo con una semplice query che finirà per essere utilizzata nel cursore.
USE AdventureWorks2008;GOSELECT BusinessEntityID, Name FROM Sales.Store;simile a questo:
Ora per la conversione di un cursore, invece di un’istruzione select.
Passo 1: Dichiarare le variabili per mantenere l’output dal cursore.,
DECLARE @BusinessEntityID as INT;DECLARE @BusinessName as NVARCHAR(50);Passo 2: Dichiarare l’oggetto cursore;
DECLARE @BusinessCursor as CURSOR;Passo 3: Assegnare la query al cursore.
SET @BusinessCursor = CURSOR FORSELECT BusinessEntityID, Name FROM Sales.Store;Passaggio 4: Aprire il cursore.
OPEN @BusinessCursor;Passo 5: Recupera la prima riga.
FETCH NEXT FROM @BusinessCursor INTO @BusinessEntityID, @BusinessName;Passo 6: Loop fino a quando non ci sono più risultati. Nel ciclo stampare l’ID e il nome dal set di risultati e recuperare la riga netta.
Passo 7: Chiudi il cursore.,
CLOSE @BusinessCursor;Passaggio 8: Deallocare il cursore per liberare memoria o aprire set di risultati.
DEALLOCATE @BusinessCursor;e ‘ Ora di mettere tutto insieme:
Questo dovrebbe dare una rapida panoramica di come costruire rapidamente e utilizzare un cursore su Microsoft SQL Server. L’esempio mostrato è stato eseguito su SQL Server 2008 e funziona allo stesso modo su SQL Server 2005 , SQL Server 2008R2, SQL Server 2012 o SQL Server 2014.,
Ecco un video che mostra una panoramica simile dell’utilizzo dei cursori in TSQL.
Buon divertimento!,
-Steve Stedman
Link Correlati
- Video: Semplice Introduzione di TSQL Cursori
- La Query SQL di Formazione per il 70-461 corso
- Cursore Semplice Esempio : L’opzione forward-only vs FAST FORWARD
- Video di Formazione sull’Utilizzo di Cursori Con SQL Server
- Ulteriori dettagli sui Cursori
- utilizzare un CURSORE per elenco database
- Cursori – Tecnico del debito
- Consultare il Database di Esempio con un CURSORE
hai provato Database di Health Monitor?
Ottenere aiuto da Steve e il team Stedman Solutions
Siamo pronti ad aiutare., Steve e il team di Stedman Solutions sono qui per aiutarti con le tue esigenze di SQL Server.Ottenere aiuto oggi contattando Stedman Solutions attraverso la libera 30 modulo di consultazione minuto.