Boucle de lecture en SQLRPGLE

Exemple : Lecture de la table utilisateur en filtrant les habitants de PARIS

**FREE
// Déclaration des variables
dcl-s nom char(30);
dcl-s prenom char(30);
dcl-s ville char(20) inz('PARIS');

// Définition du curseur C01
exec sql
  declare C01 cursor for
  select NOM , PRENOM
  from UTILISATEUR
  where VILLE = :ville
  order by NOM , PRENOM;

// Ouverture du curseur 
exec sql
  open C01;

// Boucle de lecture
dow sqlcode = 0;
  exec sql
    fetch C01 into :nom , :prenom ;
  if sqlcode = 0;
    // lecture réussie, je fais mon traitement ici
  endif;
enddo;

// Fermeture du curseur
exec sql
  close C01;

*inlr = *on;
return;

Laisser un commentaire