Normalerweise arbeiten SQL (Structured Query Language )-Anforderungen mit der gesamten Datensätze . Es gibt jedoch Zeiten, wenn es am besten oder sogar erforderlich werden, um mit Daten einer Zeile gleichzeitig zu arbeiten . Für diesen Umständen sind Cursor die beste Option. Sie erlauben einen Betrieb auf jeder Zeile eines Datensatzes , ein zu einer Zeit durchgeführt werden. Zum Beispiel sind Cursor der einfachste Weg , durch eine ganze Reihe von Daten zu bewegen und ein Verfahren auf jede Zeile in der Menge. Allerdings kommt diese zu einem Preis : Cursor sind in der Regel viel langsamer als andere SQL-Operationen . Anleitung
1
Geben Sie den folgenden Befehl in das SQL Server-Konsole zu erklären, die cursor:
DECLARE CURSOR Cursor1
2
Geben Sie eine SELECT-Anweisung, ruft die Daten der Cursor auf der Arbeit :
FÜR
SELECT last_name
FROM Mitarbeiter
FOR UPDATE OF last_name
Dies abrufen eine Liste der last_names von einem Mitarbeiter Tisch. Darin wird auch festgelegt , dass Sie die Aktualisierung der last_name während Sie die Schritte des Cursors Daten
3
Öffnen Sie den Cursor , indem Sie die folgenden Schritte aus: .
OPEN Cursor1
4
Begin durchlaufen der Zeilen , indem Sie die folgenden Schritte aus:
Weiter FETCH FROM Cursor1
INTO @ LASTNAME
WHILE @ @ FETCH_STATUS = 0
BEGIN
5
aktualisieren Sie den Nachnamen , indem Sie die folgenden Schritte aus:
EXEC UPPER ( @ LASTNAME )
Dies wird den Nachnamen des Satzes aktuelle Zeile so ist es in Großbuchstaben
6
Fetch weitere Zeile vor dem Ende der while-Schleife in Schritt 4 begonnen : .
Weiter FETCH FROM Cursor1
INTO @ LASTNAME
END
7
Schließen Sie den Cursor und lassen ihren Namen , damit es wieder verwendet werden kann, bei Bedarf:
SCHLIESSEN Cursor1
DEALLOCATE Cursor1