• KEYSET – specifică faptul că înregistrările din cursor sunt deschise într-o anumită
ordine.
OPEN nume_cursor
Executa instructiunile T-SQL declarate in cursor si incarca in memorie setul de inregistrari
rezultat.
CLOSE nume_cursor
Inchide cursorul, orice blocaje induse de acesta inregistrarilor din tabelele folosite de cursor
fiind sterse.
DEALLOCATE nume_cursor
Elibereaza memoria ocupata de cursor.
FETCH
FETCH
[ [ NEXT | PRIOR | FIRST | LAST
| ABSOLUTE { n | @nvar }
| RELATIVE { n | @nvar }
]
FROM
]
Nume_cursor
[ INTO @variable_name [ ,...n ] ]
ABSOLUTE { n | @nvar}
- dacă n este un număr pozitiv se returnează înregistrarea cu numărul n, calculată în
raport cu începutul cursorului.
- - dacă n este un număr negativ se returnează înregistrarea cu numărul n, calculată în
raport cu sfărşitul cursorului.
Variabila @@FETCH_STATUS
EXEMPLE
Baza de date folosita pentru exemple are urmatoareqa diagrama:
Exemplul 1.
--urmatoarea fraza este tot pentru test sa vedem valorile initiale ale
preturilor de catalog
--si sa putem observa la sfarsit daca s-au produs modificari in date
SELECT * FROM Produs
In captura de mai jos se vede rezultatul executiei cursorului prin urmarirea inregistrarilor
returnate de cele trei fraze SQL de test, incluse in procedura stocata.