Come controllare per Open cursori

March 18

Come controllare per Open cursori


I cursori sono un oggetto di database che consente ai programmatori di ciclo tra i record nelle tabelle. Un cursore rimane aperto fino al programmatore di SQL Server rilascia la memoria sul server. Lasciando cursori aperti nel database può compromettere le prestazioni del server. C'è una funzione speciale in Transact-SQL che dà al programmatore la possibilità di verificare la presenza di eventuali cursori aperti. Il programmatore controlla lo stato del cursore, e se viene restituito come aperta, il programmatore può deallocare la memoria.

istruzione

1 Aprire la console di Microsoft SQL Server Management. L'icona per aprire il programma si trova nel menu Start di Windows nella directory del programma "SQL Server".

2 Aprire un cursore. Il seguente codice crea un nuovo cursore per testare la funzione di stato.
dichiarare my_cur cursore

3 Ottenere lo status di un cursore per rilevare se è aperto. Fase 2 ha creato il cursore, ma non è ancora aperto. Pertanto, il valore di stato di ritorno è "-1". Il seguente codice controlla lo stato:
selezionare cursor_status ( 'globale', 'my_cur')

4 Aprire il cursore e valutare nuovamente lo stato. Un valore restituito di 1 significa che il cursore è aperto. Questa funzione può essere utilizzata per qualsiasi cursore che avete creato sul server di database. Il seguente codice rileva un cursore aperto:
selezionare cursor_status ( 'globale', 'my_cur')
Sebbene la sintassi è la stessa di Fase 3, il valore restituito è diverso.

5 Rilasciare e rimuovere il cursore dalla memoria del database. Troppi cursori aperti ridurre le prestazioni della macchina. Il codice di seguito libera la memoria del database e chiude il cursore:
deallocare my_cur