La même requête
select e'\\x353078'::bytea;
donne des résultats dans différents formats en psql :
bytea
----------
\x353078
et dans PgAdmin III :
bytea
----------
50x
PgAdmin III (et aussi PgAdmin4) probablement pour des raisons historiques définit la valeur de bytea_output
pour escape
tandis que la valeur par défaut du paramètre est hex
. Cela peut prêter à confusion (et comme vous pouvez le voir, cela mène). Il semble que pgAdmin ne devrait pas changer la valeur par défaut du paramètre.
Vous pouvez modifier le paramètre dans votre application pour obtenir le même comportement que dans PgAdmin :
set bytea_output to escape;
Bien sûr, en utilisant encode()
est aussi une bonne solution.