Tom Lane wrote:
>Jaume Teixi <teixi@6tems.com> writes:
>> I finally percated that when data contains '' or '' it's impossible to
>> parse trought:
>
>> COPY products FROM '/var/lib/postgres/dadesi.txt' USING DELIMITERS '|' \g
>
>> it causes:
>
>> SELECT edicion FROM products;
>> edicion
>> -----------------
>> Espaa|Nacional <-------puts on the same cell either there's an '|' in
>> the middle!!!
>
>Very odd. What LOCALE and multibyte encodings are you using, if any?
>This seems like it must be a multibyte issue, but I can't guess what.
>
>Also, which Postgres version are you running? If you said, I missed it.
I think this happens when the front-end encoding is SQL_ASCII and the
database is using UNICODE. Then, there are misunderstandings between
front-end and back-end, so that a single character with the eighth bit
set may be sent by the front-end and interpreted by the back-end as the
first half of a UNICODE two-byte character.
--
Oliver Elphick Oliver.Elphick@lfix.co.uk
Isle of Wight http://www.lfix.co.uk/oliver
PGP: 1024R/32B8FAA1: 97 EA 1D 47 72 3F 28 47 6B 7E 39 CC 56 E4 C1 47
GPG: 1024D/3E1D0C1C: CA12 09E0 E8D5 8870 5839 932A 614D 4C34 3E1D 0C1C
========================================
"If we confess our sins, he is faithful and just to
forgive us our sins, and to cleanse us from all
unrighteousness." I John 1:9