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
Guide de Cyber-résilience pour Microsoft 365
La violation de votre tenant M365 va au-delà d’un simple incident de cybersécurité. Elle peut entraîner une interruption opérationnelle généralisée, des perturbations commerciales et une exposition de vos données sensibles. Découvrez les méthodes et technologies pour évaluer, comparer et renforcer votre posture de sécurité Microsoft 365.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- IoT et cybersécurité : les bases que chaque décideur doit maîtriser
- AWS re:Invent 2025 : décryptage des grandes innovations qui vont transformer le cloud
- Gouvernance et optimisation des dépenses logicielles : Comment éviter les pièges de la consommation?
- Du cloud hybride aux LLM : les technologies qui rebattent les cartes en 2026
- E-mail : les tendances qui vont s’affirmer en 2026
Sur le même sujet
Les projets d’intégration augmentent la charge de travail des services IT
Intelligence Artificielle : DeepKube sécurise en profondeur les données des entreprises
10 grandes tendances Business Intelligence
ActiveViam fait travailler les data scientists et les décideurs métiers ensemble
La blockchain en pratique
