Question

La documentation suivante décrit comment voir le refcursor renvoyé d'une fonction, ici, comme ça:

    CREATE FUNCTION reffunc(refcursor) RETURNS refcursor AS '
BEGIN
    OPEN $1 FOR SELECT col FROM test;
    RETURN $1;
END;
' LANGUAGE plpgsql;

BEGIN;
SELECT reffunc('funccursor');
FETCH ALL IN funccursor;
COMMIT;

Cela fonctionne pour moi. Cependant, si je veux garder les résultats sur mon écran, je dois garder la transaction ouverte. Lorsque j'exécute Commit, mon ensemble de résultats est rejeté. Lorsque j'exécute à la fois Fetch et m'engage en même temps, le premier ensemble de résultats est rejeté.

Existe-t-il un moyen de commettre la transaction mais de garder les résultats définis? La version de Pgadmin est de 1.18.1.

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à dba.stackexchange
scroll top