Thread: copy from problem

copy from problem

From
"Mark Watson"
Date:
Hello all,
(Postgres 8.4.6 Windows)
I am stumped as to why I cannot import this using copy from within pgadmin
(the following table is created in an existing database with an encoding of
WIN1252 and the Postgres server_encoding is UTF8) :
CREATE TABLE test
(
  col_descr text
)
WITH (
  OIDS=FALSE
);
ALTER TABLE test OWNER TO postgres;
set client_encoding = 'WIN1252';
COPY test FROM 'C:\\pgtemp\\test.txt' with  delimiter as '|' csv;
select * from test;
--- col_descr
-- ----------------
--                 (empty row)

The file test.txt contains 1 line of 2 characters: éÉ  (acute accented
lowercase and uppercase e, hex(E9C9), valid win1252 characters.

Any help would be appreciated.
Mark


Re: copy from problem

From
Adrian Klaver
Date:
On Wednesday 22 December 2010 12:34:58 pm Mark Watson wrote:
> Hello all,
> (Postgres 8.4.6 Windows)
> I am stumped as to why I cannot import this using copy from within pgadmin
> (the following table is created in an existing database with an encoding of
> WIN1252 and the Postgres server_encoding is UTF8) :
> CREATE TABLE test
> (
>   col_descr text
> )
> WITH (
>   OIDS=FALSE
> );
> ALTER TABLE test OWNER TO postgres;
> set client_encoding = 'WIN1252';
> COPY test FROM 'C:\\pgtemp\\test.txt' with  delimiter as '|' csv;
> select * from test;
> --- col_descr
> -- ----------------
> --                 (empty row)
>
> The file test.txt contains 1 line of 2 characters: éÉ  (acute accented
> lowercase and uppercase e, hex(E9C9), valid win1252 characters.
>
> Any help would be appreciated.
> Mark

Is there anything in the database logs? Are the two characters separated by '|'?

--
Adrian Klaver
adrian.klaver@gmail.com

Re: copy from problem

From
Guillaume Lelarge
Date:
Le 22/12/2010 21:34, Mark Watson a écrit :
> Hello all,
> (Postgres 8.4.6 Windows)
> I am stumped as to why I cannot import this using copy from within pgadmin
> (the following table is created in an existing database with an encoding of
> WIN1252 and the Postgres server_encoding is UTF8) :
> CREATE TABLE test
> (
>   col_descr text
> )
> WITH (
>   OIDS=FALSE
> );
> ALTER TABLE test OWNER TO postgres;
> set client_encoding = 'WIN1252';
> COPY test FROM 'C:\\pgtemp\\test.txt' with  delimiter as '|' csv;
> select * from test;
> --- col_descr
> -- ----------------
> --                 (empty row)
>
> The file test.txt contains 1 line of 2 characters: éÉ  (acute accented
> lowercase and uppercase e, hex(E9C9), valid win1252 characters.
>
> Any help would be appreciated.

It would be so much easier if you told us your error message.


--
Guillaume
 http://www.postgresql.fr
 http://dalibo.com

Re: copy from problem

From
"Mark Watson"
Date:
Le 22/12/2010 21:34, Mark Watson a écrit :
> Hello all,
> (Postgres 8.4.6 Windows)
> I am stumped as to why I cannot import this using copy from within pgadmin
> (the following table is created in an existing database with an encoding
of
> WIN1252 and the Postgres server_encoding is UTF8) :
> CREATE TABLE test
> (
>   col_descr text
> )
> WITH (
>   OIDS=FALSE
> );
> ALTER TABLE test OWNER TO postgres;
> set client_encoding = 'WIN1252';
> COPY test FROM 'C:\\pgtemp\\test.txt' with  delimiter as '|' csv;
> select * from test;
> --- col_descr
> -- ----------------
> --                 (empty row)
>
> The file test.txt contains 1 line of 2 characters: éÉ  (acute accented
> lowercase and uppercase e, hex(E9C9), valid win1252 characters.
>
> Any help would be appreciated.

It would be so much easier if you told us your error message.


--
Guillaume
 http://www.postgresql.fr
 http://dalibo.com

------------------------------------
Another update :
After toying around with this, I think this is a subject for the PgAdmin
list. It looks like a display problem in pgAdmin. The characters are being
displayed with a client_encoding of UTF8 but not with a client_encoding of
WIN1252. My application, which sets client_encoding to WIN1252, receives and
displays the characters correctly. By the way, my pgAdmin is configured with
Preferences=>Font = Tahoma windows-1252 and Query=>Font = Tahoma 9
windows-1252.



Re: copy from problem

From
Guillaume Lelarge
Date:
Le 23/12/2010 14:36, Mark Watson a écrit :
> Le 22/12/2010 21:34, Mark Watson a écrit :
>> Hello all,
>> (Postgres 8.4.6 Windows)
>> I am stumped as to why I cannot import this using copy from within pgadmin
>> (the following table is created in an existing database with an encoding
> of
>> WIN1252 and the Postgres server_encoding is UTF8) :
>> CREATE TABLE test
>> (
>>    col_descr text
>> )
>> WITH (
>>    OIDS=FALSE
>> );
>> ALTER TABLE test OWNER TO postgres;
>> set client_encoding = 'WIN1252';
>> COPY test FROM 'C:\\pgtemp\\test.txt' with  delimiter as '|' csv;
>> select * from test;
>> --- col_descr
>> -- ----------------
>> --                 (empty row)
>>
>> The file test.txt contains 1 line of 2 characters: éÉ  (acute accented
>> lowercase and uppercase e, hex(E9C9), valid win1252 characters.
>>
>> Any help would be appreciated.
>
> It would be so much easier if you told us your error message.
>
>
> --
> Guillaume
>  http://www.postgresql.fr
>  http://dalibo.com
>
> ------------------------------------
> Another update :
> After toying around with this, I think this is a subject for the PgAdmin
> list. It looks like a display problem in pgAdmin. The characters are being
> displayed with a client_encoding of UTF8 but not with a client_encoding of
> WIN1252. My application, which sets client_encoding to WIN1252, receives and
> displays the characters correctly. By the way, my pgAdmin is configured with
> Preferences=>Font = Tahoma windows-1252 and Query=>Font = Tahoma 9
> windows-1252.
>

pgAdmin sets the client encoding to UTF-8 and only displays UTF-8.


--
Guillaume
 http://www.postgresql.fr
 http://dalibo.com

Re: copy from problem

From
"Mark Watson"
Date:
Le 23/12/2010 14:36, Mark Watson a écrit :
> Le 22/12/2010 21:34, Mark Watson a écrit :
>> Hello all,
>> (Postgres 8.4.6 Windows)
>> I am stumped as to why I cannot import this using copy from within
pgadmin
>> (the following table is created in an existing database with an encoding
> of
>> WIN1252 and the Postgres server_encoding is UTF8) :
>> CREATE TABLE test
>> (
>>    col_descr text
>> )
>> WITH (
>>    OIDS=FALSE
>> );
>> ALTER TABLE test OWNER TO postgres;
>> set client_encoding = 'WIN1252';
>> COPY test FROM 'C:\\pgtemp\\test.txt' with  delimiter as '|' csv;
>> select * from test;
>> --- col_descr
>> -- ----------------
>> --                 (empty row)
>>
>> The file test.txt contains 1 line of 2 characters: éÉ  (acute accented
>> lowercase and uppercase e, hex(E9C9), valid win1252 characters.
>>
>> Any help would be appreciated.
>
> It would be so much easier if you told us your error message.
>
>
> --
> Guillaume
>  http://www.postgresql.frhttp://dalibo.com
>
> ------------------------------------
> Another update :
> After toying around with this, I think this is a subject for the PgAdmin
> list. It looks like a display problem in pgAdmin. The characters are being
> displayed with a client_encoding of UTF8 but not with a client_encoding of
> WIN1252. My application, which sets client_encoding to WIN1252, receives
and
> displays the characters correctly. By the way, my pgAdmin is configured
with
> Preferences=>Font = Tahoma windows-1252 and Query=>Font = Tahoma 9
> windows-1252.
>

pgAdmin sets the client encoding to UTF-8 and only displays UTF-8.


--
Guillaume
 http://www.postgresql.fr
 http://dalibo.com
--------------------------------------------
Thanks, Guillaume! That answers everything. Happy holidays to all!
-Mark