Normalement, SQL demandes ( Structured Query Language) travaillent avec des ensembles complets de données. Cependant, il ya des moments où il peut être préférable ou même nécessaire de travailler avec des données d'une ligne à la fois. Pour ces circonstances , les curseurs sont la meilleure option . Ils permettent une opération devant être effectuée sur chaque ligne d'un ensemble de données, un à la fois . Par exemple , les curseurs sont la meilleure façon de se déplacer à travers tout un ensemble de données et d'appliquer une procédure pour chaque ligne de l'ensemble . Toutefois, cela a un coût : les curseurs sont généralement beaucoup plus lent que les autres opérations SQL . Instructions
1
Tapez la commande suivante dans la console SQL Server pour déclarer le curseur :
DECLARE CURSOR cursor1
2
Fournir une instruction SELECT qui récupère les données le curseur travailleront sur :
pour ma
SELECT last_name
FROM employés
FOR UPDATE OF nom_famille
va récupérer une liste de last_names d'une table des employés. Il précise aussi que vous mettrez à jour la nom_famille que vous avancez dans les données du curseur
3
Ouvrez le curseur en tapant la commande suivante : .
OUVERT cursor1
Hôtels 4
à itérer les lignes en tapant la commande suivante :
CHERCHER APRÈS dE cursor1
INTO @ LASTNAME
alors que @ @ FETCH_STATUS = 0 < br >
BEGIN
5
Mise à jour le dernier nom en tapant la commande suivante :
EXEC UPPER ( @ nom)
Cela va régler le nom de l' ligne actuelle si elle est en majuscules
6
Fetch autre ligne avant de terminer la boucle WHILE commencé à l'étape 4 : .
CHERCHER APRÈS dE cursor1
eN @ LASTNAME
FIN
7
fermer le curseur et relâchez son nom afin qu'il puisse être utilisé à nouveau si nécessaire:
PROCHE cursor1
DEALLOCATE cursor1