PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 02/04/2018 09:24:52

samuel
Membre

Curseur avec query tool

Bonjour,
Avec pgadmin4, j'ouvre query tool et je rentre le code suivant. Il s'exécute mais rien ne s'affiche. Avec la console (SQL Shell) je fais la même chose et là j'obtiens l'affichage des 5 premiers
enregistrements de ma table users.  pgadmin4 permet-il d'afficher ce type de requête ?

BEGIN WORK;
DECLARE curs1 SCROLL CURSOR FOR SELECT * FROM users;
FETCH FORWARD 5 FROM curs1;
FETCH PRIOR FROM curs1;
CLOSE curs1;
COMMIT WORK;

Merci pour vos réponses.

Hors ligne

#2 03/04/2018 09:54:30

samuel
Membre

Re : Curseur avec query tool

Bonjour,
j'ai trouvé le problème. Avec le commit je valide ma transaction et donc l'affichage ne se fait pas. Sans le commit l'affichage se fait. Ce n'est pas un problème de pgadmin mais de SQL.
La question que je me pose à présent, est-il possible dans une transaction de forcer l'affichage du résultat ?

Hors ligne

#3 03/04/2018 15:03:51

gleu
Administrateur

Re : Curseur avec query tool

C'est tout à fait le contraire. Ce n'est pas un problème de SQL mais de pgAdmin. Si vous exécutez plusieurs requêtes en même temps, pgAdmin n'affiche que les résultats de la dernière requête. Il s'avère ici que c'est le COMMIT, et cette instruction ne renvoie aucune ligne. Si vous exécutez la même chose dans psql, vous obtiendriez le résultat des deux FETCH. Bref, avec pgAdmin, ce n'est pas possible.


Guillaume.

Hors ligne

Pied de page des forums