Обсуждение: Win1250 database under linux
Hi. I have ecountered strange behaviour with postgres 8 under linux so I am reporting this as a bug. I haven't compiled postgres myself because it is on hosted server but it is an options if it would solve this problem. The problem i'm having seems to be known but i don't know if there is a workaround. Functions upper() and lower() don't change value for Croatian national characters under linux (others probably as well, but i havent tested). Operator ILIKE doesn't work correctly either. I have tried to reporeduce bug under windows version of postgres by transfering database via backup/restore but the windows version is working correctly. I had to write some pretty ugly query logic as a temporary workaround for searching national characters... Damir __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com
Damir Bijuklic <damirbijuklic@yahoo.com> writes: > The problem i'm having seems to be known but i don't > know if there is a workaround. Functions upper() and > lower() don't change value for Croatian national > characters under linux (others probably as well, but i > havent tested). Operator ILIKE doesn't work correctly > either. Sounds like you are using the wrong locale and/or encoding settings. Since you have not said what you are using, it's hard to offer anything more specific than that. regards, tom lane
Damir Bijuklic <damirbijuklic@yahoo.com> writes: > I'm using WIN1250 locale on both databases. Does your Linux platform even have such a locale? Mine doesn't. ("locale -a" will show you what is supported.) I suspect your machine is not recognizing the LANG setting and is falling back to behave as though the locale is POSIX. > Client is java, and no special SET commands are > executed on connection... Don't know other specifich > which would be useful. AFAIK, Java does not do WIN1250, only Unicode. You would probably be best off using Unicode (UTF8) encoding and some suitable locale setting (again, see "locale -a") on the Unix platform. regards, tom lane
Damir Bijuklic <damirbijuklic@yahoo.com> writes: > My linux machine has following relevant locales: > hr_HR > hr_HR.iso88592 > hr_HR.utf8 > hrvatski I'd recommend using hr_HR.utf8 plus UTF8 database encoding. You'll need to re-initdb in order to install that as the database locale :-( regards, tom lane