Transact- SQL ou T -SQL pour faire court, est une extension du standard SQL - un langage de programmation conçu pour la gestion des données dans les bases de données relationnelles - mis en place par Microsoft , de son produit SQL Server, et ? Sybase , dans sa Adaptive produit Enterprise Server. Dans une base de données relationnelle , les données sont stockées dans des tables de lignes et de colonnes . En T -SQL , un curseur est une structure de contrôle nommé utilisée par un programme d'application pour pointer vers une ligne de données . Placer le curseur
Un curseur est associé à une déclaration, connue sous le nom d'une instruction SELECT , qui interroge la base de données et récupère zéro ou plusieurs lignes d'une ou plusieurs tables de base de données en fonction des critères spécifiés . Un curseur est constitué d'un ensemble de lignes résultant de l'exécution de l'instruction SELECT associée avec le curseur et la position du curseur , qui est un pointeur vers une ligne avec le jeu de résultats.
Déclaration
Photos
T -SQL , les attributs d'un curseur , y compris la requête utilisée pour construire le jeu de résultats sur lequel le curseur opère , sont définies par une instruction DECLARE CURSOR . Le DECLARE CURSOR crée la structure du curseur et compile et stocke la requête associée avec le curseur , mais ne pas exécuter la requête .
Ouverture et Obtention
l' instruction DECLARE CURSOR est suivie par une instruction OPEN , qui ouvre le curseur ou , en d'autres termes , effectue des opérations de base - telles que le verrouillage d'une table de base de données , de sorte qu'il ne peut être utilisé ou modifié par les applications concurrentes - qui permettra à la requête associée au curseur d'être exécuté . L' instruction OPEN renvoie un jeu de résultats et une commande FETCH exécute le curseur compilé et retourne une ou plusieurs lignes du jeu de résultats. La commande FETCH déplace la position actuelle du curseur vers le bas l'ensemble de résultats par une ou plusieurs lignes à la fois .
Clôture
avoir récupéré une ligne de données basé sur la requête associée avec le curseur, ce qui reste est d'examiner , mettre à jour ou supprimer la ligne via le curseur. Mettre à jour et supprimer des opérations sont facultatifs, mais en tout cas, ne s'appliquent qu'à la ligne de données à la position actuelle du curseur après une extraction . Notez que vous ne pouvez pas utiliser un curseur pour insérer des lignes dans une table de base de données. Lors du traitement sur toutes les lignes appropriées dans le jeu de résultats est terminée, une commande de fermeture est utilisée pour fermer le jeu de résultats , supprimez toutes les tables temporaires et libérer les ressources allouées à la structure du curseur . La commande de fermeture peut , en fait, être exécutée à tout moment, sans traiter l'ensemble des résultats.