Grant Finnemore <gaf@ucs.co.za> writes:
> In brief, there seems to be some problem at the backend inserting a
> \0.
char(n) does not support embedded nulls. Offhand I believe that bytea
is the only datatype that does, and even then you have to write 'em
with a backslash-escape --- ie, send "\000" not an actual null.
Fixing this is not likely to happen soon, if ever, because it would
involve a massive overhaul of the datatype I/O system, with such
side-effects as breaking every user-defined datatype in existence.
Textual representations of datatypes are C strings --- ie,
null-terminated --- and all datatype I/O routines depend on that.
regards, tom lane