Friday, August 29, 2008

Re: [GENERAL] Dumping/Restoring with constraints?

On Fri, Aug 29, 2008 at 01:53:28PM +0800, Phoenix Kiula wrote:

> My database encoding on BOTH the sides is UTF8. The dumped DB is UTF8.

Are you sure? I know people asked up-thread for the output of \l, but
I haven't seen it. If your encoding is UTF-8, then I don't understand
how you got non-UTF-8 characters in there, unless there's some bug in
the 8.2 series of which I'm unaware.

> The one I am importing into is also UTF8. So why is it showing me this
> error? Do I also have to look at stuff like "collation"?

You shouldn't have to. That's a constraint on sorting and such like.
It doesn't control what can get into the database.

Hmm. I wonder if the problem is the locale you're using for pg_dump
vs. what you're using when handing the data back in. If the locale
were different, it might be possible that your client_encoding was
different. I have no idea if this is the case, but you might want to
try it. Check your locale at the command line on each system.

> Also, how can I ensure that my dumped database on the server has only
> UTF8 data? What constraint or function can I use?

As I said before, if the database encoding is UTF-8, then it's
supposed to be _impossible_ that you get non-UTF-8 data in there.
That's the whole point of having the database encoding.

A

--
Andrew Sullivan
ajs@commandprompt.com
+1 503 667 4564 x104
http://www.commandprompt.com/

--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

No comments: