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

Re: UTF8 problem

From: "Jean-Yves F(dot) Barbier" <12ukwn(at)gmail(dot)com>
To: pgsql-novice(at)postgresql(dot)org
Subject: Re: UTF8 problem
Date: 2011-11-17 14:31:22
Message-ID: 20111117153122.788e564f@anubis.defcon1 (view raw or flat)
Thread:
Lists: pgsql-novice
On Thu, 17 Nov 2011 13:05:39 +0100
"Kai Otto" <Kai(at)medis(dot)nl> wrote:

> I have created a database using version 9.0 and set the client encoding
> to UTF* in the file postgresql.conf
> 
> Runnig the query:
> 
> INSERT INTO "JapaneseTest" ("ID", "name") Values(2, '\x83}\x83C
> \x83h\x83L\x83\x85\x83\x81\x83\x93\x83g (My Documents)')

Works perfectly here: Linux, Pg v9.1, pgdamin3 v1.14.0, svr+cli in UTF-8.

What is the DB collation?

> Results in:
> ERROR:  invalid byte sequence for encoding "UTF8": 0x83
> ********** Error **********
> ERROR: invalid byte sequence for encoding "UTF8": 0x83
> SQL state: 22021

== character not in repertoire

> I am running the query in pgAdmin III 
> My table looks like:
> CREATE TABLE "JapaneseTest" (
>   "ID" bigint NOT NULL,
>   "name" text,
>   CONSTRAINT "JapaneseTest_pkey" PRIMARY KEY ("ID")
> ) WITH ( OIDS=FALSE );

Are there any *good* reasons to use double quotes everywhere?
(that double complicate your live)

> ALTER TABLE "JapaneseTest" OWNER TO postgres;
> GRANT ALL ON TABLE "JapaneseTest" TO public;
> GRANT ALL ON TABLE "JapaneseTest" TO postgres;

Last line is useless as you already set ownership to user 'postgres' 
which gives him the whole control of this table.

-- 
To be loved is very demoralizing.
		-- Katharine Hepburn

In response to

Responses

pgsql-novice by date

Next:From: Kai OttoDate: 2011-11-17 14:48:37
Subject: Re: UTF8 problem
Previous:From: Kai OttoDate: 2011-11-17 12:05:39
Subject: UTF8 problem

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