J'ai eu un problème similaire, et j'ai résolu en définissant l'encodage sur UTF8 avec \encoding UTF8
dans le client avant de tenter un INSERT INTO foo (SELECT * from bar WHERE x=y);
. Mon client utilisait l'encodage WIN1252 mais la base de données était en UTF8, d'où l'erreur.
Plus d'informations sont disponibles sur le wiki PostgreSQL sous Character Set Support (docs de développement).