This is a discussion on ILIKE fails with accented letters on utf8 locale within the pgsql Bugs forums, part of the PostgreSQL category; --> Hello, using a database with utf8 encoding and utf8 locale, accented letters are not properly compared. Test to reproduce: ...
| |||||||
| FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| ||||
| Hello, using a database with utf8 encoding and utf8 locale, accented letters are not properly compared. Test to reproduce: it converts a lowercase letter (the sequence '\xc3\xa8' is the utf8 encoding of the unicode 'LATIN SMALL LETTER E WITH GRAVE') into uppercase and then compares the two letters with a non case sensitive operator. I expect this to be an identity, so the value expected from the query is 't'. $ initdb --encoding=utf8 --locale=en_US.utf8 en_utf8 $ pg_ctl -D en_utf8 start $ psql postgres postgres=# SELECT upper('\xc3\xa8') ILIKE '\xc3\xa8'; ?column? ---------- f The locale it_IT.utf8 shows the same problem too. The result is true for it_IT.iso-8859-1 locale. Is it a PostgreSQL related problem or a libc one? Thank you -- Daniele Varrazzo - Develer S.r.l. http://www.develer.com ---------------------------(end of broadcast)--------------------------- TIP 1: if posting/reading through Usenet, please send an appropriate subscribe-nomail command to majordomo@postgresql.org so that your message can get through to the mailing list cleanly |
| Thread Tools | |
| Display Modes | |
|
|