Cursors ein Datenbank -Objekt, das es Programmierern, Schleife durch die Datensätze in Tabellen ermöglicht . Ein Cursor bleibt offen, bis der SQL Server -Programmierer freigibt den Speicher auf dem Server. Verlassen Cursor geöffnet in der Datenbank kann weh tun Leistung auf dem Server . Es ist eine spezielle Funktion in Transact SQL , dass der Programmierer die Möglichkeit gibt, für alle offenen Cursor zu überprüfen. Der Programmierer prüft der Cursor- Status, und wenn es so offen zurückgegeben wird , kann der Programmierer den Speicher freigeben . Anleitung
1
Öffnen Sie die Microsoft SQL Server Management -Konsole. Das Symbol zum Öffnen des Programms ist in der Windows- Start-Menü in der "SQL Server" -Programm-Verzeichnis .
2
Öffnen eines Cursors . Der folgende Code erstellt eine neue Cursor zu testen, der Status function.declare my_cur Cursor
3
Sie den Status eines Cursors zu erkennen, wenn es geöffnet ist . Schritt 2 erstellt den Cursor , aber es ist noch nicht geöffnet . Daher ist die Rückkehr Status Wert "-1 ". Der folgende Code überprüft den Status : select CURSOR_STATUS ( 'global ', ' my_cur ')
4
Öffnen Sie den Cursor und bewerten den Status erneut . Ein Rückgabewert von 1 bedeutet, dass der Cursor geöffnet ist . Diese Funktion kann für jede Cursor Sie auf dem Datenbankserver erstellt haben verwendet werden. Der folgende Code erkennt einen offenen Cursor : select CURSOR_STATUS ( 'global ', ' my_cur ') Obwohl die Syntax ist die gleiche wie in Schritt 3 , der Rückgabewert ist anders
5
Deallocate und entfernen Sie den Cursor. von Datenbank -Speicher. Zu viele Cursor geöffnet reduzieren Leistung an der Maschine. Der folgende Code gibt den Datenbank -Speicher und schließt den Cursor : deallocate my_cur