Afficher la progression d'un traitement en PL/SQL et PL/pgSQL
Posté : mer. 12 sept. 2018 16:04
Merci à Richard pour sa question :
"J'aimerais afficher la progression d'un traitement effectué en PL à l'utilisateur au fur et à mesure. Est-ce possible avec Oracle et PostgreSQL ?"
Réponse :
Avec Oracle Database, c'est compliqué mais il existe des solutions : https://asktom.oracle.com/pls/apexf?p=1 ... 0346426646
Avec PostgreSQL, c'est direct.
Exemple de bloc anonyme PL/pgSQL affichant un message à chaque tour de boucle :
"J'aimerais afficher la progression d'un traitement effectué en PL à l'utilisateur au fur et à mesure. Est-ce possible avec Oracle et PostgreSQL ?"
Réponse :
Avec Oracle Database, c'est compliqué mais il existe des solutions : https://asktom.oracle.com/pls/apexf?p=1 ... 0346426646
Avec PostgreSQL, c'est direct.
Exemple de bloc anonyme PL/pgSQL affichant un message à chaque tour de boucle :
Code : Tout sélectionner
select version();
version
----------------------------------------------------------------------------------------------------------
PostgreSQL 9.6.9 on x86_64-pc-linux-gnu, compiled by gcc (Debian 6.3.0-18+deb9u1) 6.3.0 20170516, 64-bit
(1 ligne)
do
$$
begin
for i in 1..10 loop
perform pg_sleep(1);
RAISE NOTICE 'Salut Richard !, %', i;
end loop;
end$$;