Hi Emil! Hi everyone!

Emil, are you sure you were connected to right database when running your tests? I have been having major problems with this bug in version pg 8.1.*, but I think it has been fixed in 8.2.

See the results of my tests:

test=# select version();
                                                    version
-----------------------------------------------------------------------------------------------------------------
PostgreSQL 8.2.4 on x86_64-pc-linux-gnu, compiled by GCC cc (GCC) 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)


event=# show client_encoding;
client_encoding
-----------------
UTF8


test=# select upper ('ÖöÜüÄäßĆČćč€ĞğīŃńŇňŐőŘřŠšşŽžŻżÓóŁłĆć');
                upper
---------------------------------------
ÖÖÜÜÄÄßĆČĆČ€ĞĞĪŃŃŇŇŐŐŘŘŠŠŞŽŽŻŻÓÓŁŁĆĆ


test=# select lower('ÖöÜüÄäßĆČćč€ĞğīŃńŇňŐőŘřŠšşŽžŻżÓóŁłĆć');
                lower
---------------------------------------
ööüüääßćčćč€ğğīńńňňőőřřššşžžżżóółłćć


test=# select 'ööüüääßćčćč€ğğńńňňőőřřššşžžżżóółłćć' ilike 'ÖÖÜÜÄÄßĆČĆČ€ĞĞŃŃŇŇŐŐŘŘŠŠŞŽŽŻŻÓÓŁŁĆĆ';
?column?
----------
t



None of the above works properly in pg 8.1.
HOWEVER there IS a problematic case with characters like 'ı' - notice the missing dot, it is not 'i'. Upper case representation of 'ı' is 'I', but lower case representation of 'I' is 'i' - at least according to lower() and upper().

test=# select upper('ı');
upper
-------
I

test=# select lower ('I');
lower
-------
i

test=# select 'ı' ilike 'I';
?column?
----------
f

test=# select 'I' ilike 'ı';
?column?
----------
f

Everything is converted to lower() before comparing, so 'ı' and 'I' will never match.
But shouldn't they?


Is this the right place for these comments?


Regards
Erwin Brandstetter


--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to