Songez à toutes les fois que vous avez entendu des propos tels que : « Trouver tous les clients de Californie, Nevada, Arizona, ou New Mexico et changer leur numéro de territoire de ventes en 27 ». Que ce soit une requête ponctuelle ou une exigence permanente, l’écriture d’une solution
Mettez à jour sept (ou soixante dix) lignes à la fois
en RPG peut être encombrante et le code résultant pourrait bien être inefficace.
En revanche, SQL peut facilement mettre à jour (ou supprimer ou insérer) de multiples lignes avec une seule instruction. Si de telles requêtes reviennent fréquemment, plutôt que d’écrire et d’exécuter une instruction SQL ad hoc, vous pourriez intégrer une instruction dans un programme RPG et laisser à l’utilisateur le soin d’indiquer l’état et le nouveau territoire. Par le même procédé, vous pouvez supprimer toutes les lignes correspondant à certains critères : il suffit de remplacer l’instruction Update par Delete.
Par conséquent, chaque fois qu’il faudra mettre à jour ou supprimer de multiples lignes d’une table, songez à utiliser le SQL imbriqué. Comparons la technique de la figure 5 avec une mise à jour à l’aide d’un curseur, comme dans la figure 4. Le code de la figure 4 ne mettra à jour qu’une ligne à chaque exécution de l’instruction Update, tandis que l’instruction Delete de la figure 5 mettra à jour plusieurs lignes chaque fois qu’elle s’exécutera. Si vous voulez mettre à jour toutes les lignes répondant à un critère particulier, de la même manière (par exemple changer le territoire en 27), utilisez une instruction Update sans extraire d’abord un jeu de résultats (figure 5).
En revanche, si vous voulez sélectionner plusieurs lignes puis ne mettre à jour que certaines d’entre elles (en permettant par exemple à l’utilisateur de sélectionner dans une liste), vous extrairez le jeu de résultats puis utiliserez le curseur pour mettre à jour sélectivement des lignes dans la base de données sous-jacente (figure 4). Le choix d’utiliser le SQL imbriqué pour insérer des données est un peu différent que d’utiliser SQL pour les mises à jour et suppressions.
En effet, par défaut, un SQL Insert ajoute une seule ligne à la base de données, et l’insertion d’une ligne unique est une tâche dont RPG s’acquitte au moins aussi bien que SQL. Cependant il est possible d’écrire des instructions Insert qui ajoutent de multiples lignes à une table (ou à des tables) en copiant certaines données d’une autre table. S’il faut insérer de multiples lignes, il vaut mieux utiliser le SQL imbriqué que d’ajouter chaque ligne dans une boucle de votre code RPG.
Téléchargez cette ressource
Guide de Threat Intelligence contextuelle
Ce guide facilitera l’adoption d’une Threat Intelligence - renseignement sur les cybermenaces, cyberintelligence - adaptée au "contexte", il fournit des indicateurs de performance clés (KPI) pour progresser d' une posture défensive vers une approche centrée sur l’anticipation stratégique
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Microsoft Build 2026 : industrialiser l’IA agentique dans les environnements d’entreprise
- IA et souveraineté des données : les entreprises françaises redéfinissent les infrastructures IT
- Temps d’arrêt IT : un coût de 600 milliards de dollars pour les entreprises du Global 2000
- Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
Articles les + lus
Computex 2026 : 5 signaux forts à retenir
La chaîne d’approvisionnement, point de rupture récurent du SI
Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
Rhea1 : SiPearl allume le CPU européen le plus ambitieux pour le HPC et l’IA souveraine
Analyse Patch Tuesday Mai 2026
À la une de la chaîne Tech
- Computex 2026 : 5 signaux forts à retenir
- La chaîne d’approvisionnement, point de rupture récurent du SI
- Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
- Rhea1 : SiPearl allume le CPU européen le plus ambitieux pour le HPC et l’IA souveraine
- Analyse Patch Tuesday Mai 2026
