afficher le source d’une fonction dans psql

Pour afficher par exemple le code de la fonction update_sequence

 

select prosrc  FROM pg_proc where proname = 'update_sequence';

ce qui donne

                                                             prosrc                                                             
--------------------------------------------------------------------------------------------------------------------------------
 DECLARE                                                                                                                       +
     line RECORD;                                                                                                              +
     newsequence ALIAS FOR $1;                                                                                                 +
     id_order alias for $2;                                                                                                    +
     pas alias for $3;                                                                                                         +
 BEGIN                                                                                                                         +
     if pas >=1 then                                                                                                           +
     FOR line IN SELECT id FROM sale_order_line where order_id = id_order and sequence>=newsequence ORDER BY sequence desc LOOP+
 EXECUTE 'update sale_order_line set sequence=sequence+'||pas||' where id = '|| line.id ;                                      +
     END LOOP;                                                                                                                 +
     else                                                                                                                      +
     FOR line IN SELECT id FROM sale_order_line where order_id = id_order and sequence>=newsequence ORDER BY sequence asc LOOP +
 EXECUTE 'update sale_order_line set sequence=sequence+'||pas||' where id = '|| line.id ;                                      +
     END LOOP;                                                                                                                 +
     end if;                                                                                                                   +
     RAISE NOTICE 'Done update sequence.';                                                                                     +
     RETURN 1;                                                                                                                 +
 END;

Cet article, publié dans Postgresql, est tagué . Ajoutez ce permalien à vos favoris.

Votre commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l’aide de votre compte WordPress.com. Déconnexion /  Changer )

Image Twitter

Vous commentez à l’aide de votre compte Twitter. Déconnexion /  Changer )

Photo Facebook

Vous commentez à l’aide de votre compte Facebook. Déconnexion /  Changer )

Connexion à %s