Re: [postgis-users] pgsql2shp : Encoding headache - Mailing list pgsql-general

From InterRob
Subject Re: [postgis-users] pgsql2shp : Encoding headache
Date
Msg-id 671e36b0910160328w38a59524w6f2c6c711c4f6844@mail.gmail.com
Whole thread Raw
In response to pgsql2shp : Encoding headache  (Arnaud Lesauvage <arnaud.listes@codata.eu>)
Responses slightly off-topic: Central Auth
List pgsql-general
Does that last query (invoking the upper() function) actually run well when executed in pgsql console?


Rob

2009/10/16 Arnaud Lesauvage <arnaud.listes@codata.eu>
Hi all!

I have an UTF8 encoded shapefile, and an UTF8 encoded postgis-enabled database. I want my shapefile to be encoded in WIN1252, and a particular field to be in uppercase.

Since I am on windows, I don't have an iconv executable. Therefore, I am trying to :
- dump the shapefile with shp2pgsql to an sql text file
- load the resulting sql file into a postgresql table
- dump this table into a shapefile with pgsql2shp (in WIN1252)

To load the shapefile into postgresql, I had to dump it without specifying a '-W' argument, set my client_encoding to UTF8, then load the sql file into postgresql.

If I look at the data with pgAdmin (with client_encoding set to UTF8), it looks good : accentuation is fine, special characters are fine.

To dump the data in a WIN1252-encoded shapefile, pgsql2shp has no encoding argument, so I set my client encoding to WIN1252 thtough the environment variable PGCLIENTENCODING.

If I just dump the file this way, it seems to be fine. So this command works fine :
pgsql2shp -f myouput.shp -u postgres -g mygeom mydatabase "SELECT mytext, mygeom FROM mytemptable"
->  [621679 rows]

But then, if I dump it through a query to have my field in uppercase, I get an error 'character 0xc29f of encoding UTF8 has no equivalent in WIN1252' (translated by myself, the message is in French)
The command is simply :
pgsql2shp -f myouput.shp -u postgres -g mygeom mydatabase "SELECT upper(mytext) as mytext, mygeom FROM mytemptable"

So I guess there is a problem with my 'upper' conversion, but I have no idea what this 0xc29f character could be.

Any help would be greatly appreciated.
Thanks a lot !

--
Arnaud Lesauvage
_______________________________________________
postgis-users mailing list
postgis-users@postgis.refractions.net
http://postgis.refractions.net/mailman/listinfo/postgis-users

pgsql-general by date:

Previous
From: Raymond O'Donnell
Date:
Subject: Re: pgsql2shp : Encoding headache
Next
From: Arnaud Lesauvage
Date:
Subject: Re: pgsql2shp : Encoding headache