On Sun, Oct 28, 2001 at 12:44:26PM +0100, Jean-Michel POURE wrote:
> I only want this query to work under Unicode:
> SELECT * FROM test WHERE source_content ILIKE '%accepté%'.
As I showed it works, if data in db is in UTF-8 and the query
string 'accepté' is in UTF8
> >* If client_encoding == server_encoding, the bytes are put into
> > DB as-is - no conversion is done.
> >
> >So are you absolutely sure you have on client side UTF8 strings?
> PostgreSQL is compiled with UNICODE and LOCALE support.
> Unicode is used on both ends (PostgreSQL and psql).
psql uses your input literally - so is your console/xterm in
UNICODE/UTF8?
> >Eg. I did the following:
> >
> >* created db with encoding = UNICODE
> >* Put your example into test.sql
> >* iconv -f latin1 -t utf8 test.sql > test2.sql
> >* psql < test2.sql
> >
> >and it worked as it should...
>
> Nice to hear it works when transcoding files to UTF-8. It shows it is not a
> back-end problem.
>
> As for me, I typed INSERT INTO source_content VALUES ('Permis de conduire
> accepté') in Psql.
As I said - psql does not do any conversion.
> Psql does not insert the data and I have to kill it manually. Can you
> reproduce this?
No. If it hangs this is serious problem. Or did you simply
forgot final ';' ? It btw does not seem valid sql to me,
considering you previously provided table structure.
In the end: are the strings/queries you give to psql/pg_exec
UTF-8 - this is now main thing, as you have _configured_
everything correctly.
--
marko