Re: UNICODE problem on 7.4 with COPY

From: Tino Wildenhain <tino(at)wildenhain(dot)de>
To: Toby Doig <toby(at)vibrantmedia(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: UNICODE problem on 7.4 with COPY
Date: 2003-12-08 14:02:37
Message-ID: 3FD4847D.6090601@wildenhain.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Toby Doig schrieb:
> When I try to import data from a unicode file into PostgreSQL 7.4 under FreeBSD it appears to now understand the Unicode file format.
>
> To demonstrate I export a set of Integers into a Unicode file from MSSQL 2000. I samba the file to a FreeBSD box and try to import from psql with COPY. It fails. Wordpad and Notepad both read the file ok, even after I bounce the file via the FreeBSD box (to test samba didn't munge it).
>
> FreeBSD 5.1-RELEASE #0
> PGSql 7.4 (dl'd and compiled fri 28th Nov 2003)
> Dual 800MHz P3's
>
> I create a database with encoding = UNICODE.
> I create a table
>
> CREATE TABLE testunicode
> (
> anum int4
> ) WITHOUT OIDS;
>
> I then use psql to import the file, which is a single column of integers.
>
> copy testunicode from '/home/toby/itxt/anum.txt';
> ERROR: invalid input syntax for integer: "ÿþ1"
> CONTEXT: COPY testunicode, line 1, column anum: "ÿþ1"
>
>
> When viewing the file as hex I see:
> FF FE 31 00 31 00 32 00 37 00 39 00 30 00 0D 00 0A 00
> ÿ þ 1 . 1 . 2 . 7 . 9 . 0 . . . . .
>
> According to http://www.crispen.org/src/archive/0013.html
>
> FF FE UTF-16/UCS-2, big endian

See also
http://www.unicode.org/unicode/faq/utf_bom.html#22

>
> So, what is going wrong? Why can't I import this very simple unicode file?
> I've searched the archives and google, but to no avail.

Postgresql only accepts a stream of chars in the given client
encoding. This defaults to "utf-8" when you set up your
db as "unicode". psql does not read the BOM information
in files since it does not operate on files but on streams.
The same I fear is true for postgresqls COPY command.

I think a patch made by you is appreciated :-)

Regards
Tino

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Ed L. 2003-12-08 14:19:26 Re: corruption diag/recovery, pg_dump crash
Previous Message Chris Travers 2003-12-08 13:33:48 Planner question regarding functions