Mis en ligne le 13/04/2005 - Publié en Juin 2004
Le plein de conseils...
Le curseur réutilisable
Je souhaite fréquemment effectuer des opérations telles que
l’actualisation de vues, le contrôle des données de tables, la
création d’instructions SQL, la reconstruction d’index ou
encore la modification de la structure de table pour de
nombreux objets simultanément. Afin d’effectuer ce type
d’opération en bloc, je conserve à portée de main un curseur
SQL servant de modèle et je le modifie en fonction des besoins.
Le script du listing 1 ouvre un curseur sur la table spécifiée
dans l’instruction SELECT (dans notre exemple, la table
sysobjects), puis effectue une boucle sur chaque enregistrement
du curseur afin d’affecter la variable @OjbectName au
contenu du champ de nom courant. Le script utilise cette variable
pour créer une instruction EXEC qui exécutera l’opération
souhaitée. Notre exemple actualise toutes les vues détenues
par db_owner.
En changeant l’instruction SELECT dans le curseur, vous
pouvez effectuer des opérations sur n’importe quel objet de
base de données, utiliser une clause WHERE pour limiter
l’ensemble de résultats retourné, voire ajouter une clause
ORDER BY. Il est également possible de modifier la portion
EXEC du curseur afin de réaliser un large éventail d’opérations
sur les objets retournés par l’instruction SELECT. Par
exemple, le listing 2 montre comment modifier le curseur
afin d’ajouter un champ Timestamp à chaque table de la base
de données. Si vous souhaitez limiter l’ajout à 30 tables
seulement, il suffit de changer l’instruction SELECT afin de
retourner uniquement les tables concernées. En remplaçant
l’instruction EXEC par PRINT, vous pouvez générer aisément
un script T-SQL et l’enregistrer en vue d’une exécution
ultérieure. Avec un peu d’imagination, cette technique de
curseur peut servir à exécuter de nombreuses opérations qui
vous feront gagner du temps.
Téléchargez cette ressource
Plan de sécurité Microsoft 365
Les attaquants savent comment prendre le contrôle de votre tenant Microsoft 365, et vous, savez-vous comment le reprendre en main ?
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Cloud public : la sécurité des données s’impose comme premier critère pour les agents publics
- Le champ de bataille des fournisseurs de services n’est plus l’IA, mais la confiance
- Continuer avec Exchange Server : quelles conséquences ?
- Ransomware : l’IA accélère le vol de données et place les dirigeants dans le viseur
Articles les + lus
IA et cybersécurité : les entreprises françaises acceptent plus de risques qu’elles ne savent les contrôler
Veeam passe à la vitesse supérieure avec iResOps pour Microsoft 365
Visibilité, réputation, clients : ce que les petites entreprises ne pourront plus déléguer en 2027
Le champ de bataille des fournisseurs de services n’est plus l’IA, mais la confiance
Réforme de la facturation électronique 2026 : de la contrainte réglementaire à un véritable enjeu différenciant
À la une de la chaîne Data
- IA et cybersécurité : les entreprises françaises acceptent plus de risques qu’elles ne savent les contrôler
- Veeam passe à la vitesse supérieure avec iResOps pour Microsoft 365
- Visibilité, réputation, clients : ce que les petites entreprises ne pourront plus déléguer en 2027
- Le champ de bataille des fournisseurs de services n’est plus l’IA, mais la confiance
- Réforme de la facturation électronique 2026 : de la contrainte réglementaire à un véritable enjeu différenciant
