Skip site navigation (1) Skip section navigation (2)

Converting from SQL_ASCII to UTF8

From: "Peter Koczan" <pjkoczan(at)gmail(dot)com>
To: "pgsql-admin(at)postgresql(dot)org" <pgsql-admin(at)postgresql(dot)org>
Subject: Converting from SQL_ASCII to UTF8
Date: 2007-11-29 21:37:06
Message-ID: 4544e0330711291337y4c875320r36414692972296a4@mail.gmail.com (view raw or flat)
Thread:
Lists: pgsql-admin
Hi all,

I'd like to move my database encoding from SQL_ASCII to UTF8, mostly
because "No encoding conversion will be done when the setting is
SQL_ASCII. Thus, this setting is not so much a declaration that a
specific encoding is in use, as a declaration of ignorance about the
encoding." (from
http://www.postgresql.org/docs/current/static/multibyte.html) I saw a
few threads on the list regarding this before, for instance this one
(http://archives.postgresql.org/pgsql-admin/2004-01/msg00225.php) but
there's a specific issue that I'm having that wasn't addressed.

I have some UTF-8 data in my databases, and it's causing dump/restore
to fail. Specifically, I'm seeing messages like:
pg_restore: [archiver (db)] COPY failed: ERROR:  invalid byte sequence
for encoding "UTF8": 0xe14c65
HINT:  This error can also happen if the byte sequence does not match
the encoding expected by the server, which is controlled by
"client_encoding".
CONTEXT:  COPY applicants, line 282

Which happens even if I specify "-E UTF8" in the pg_dump command.

Here's the weirder part. If I just update the encoding by hand in
pg_database (as cautiously suggested by Tom Lane in the aforementioned
thread), it works. I doubt this will work in the general case, and I'd
like to at least offer this option for other people's databases.

I also tried using GNU recode (version 3.6) as suggested in similar
threads, but I got errors in both the plain and custom pg_dump
formats.

$ recode ascii..utf8 man.sql
recode: man.sql failed: Invalid input in step `ANSI_X3.4-1968..UTF-8'
$ recode ..utf8 man.sql
recode: man.sql failed: Invalid input in step `CHAR..UTF-8'

Any ideas?

Peter

Responses

pgsql-admin by date

Next:From: Andrew SullivanDate: 2007-11-29 21:47:53
Subject: Re: clear statistics in pg_stat
Previous:From: Campbell, LanceDate: 2007-11-29 21:32:59
Subject: clear statistics in pg_stat

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group