Subject Character set UTF8 and CZECH collation, via ICU
Author ZSE
 
 
Hello,
 
I like Firebird database more than 10 years:-)
 
I always use for VARCHAR value character set WIN1250 and COLLATION PXW_CSY...
Now I need to you UTF8 and I need to have correct CZECH collation...
 
I have found some information, I must use ICU and add collation to Firebird...
 
In march 2013 I have success I was doing:
1) download Firebird 2.5.2.26539 for windows x64, install it on Windows 7 64bit
2) download ICU 4.8.1.1. (from http://site.icu-project.org/download <http://www.google.com/url?q=http%3A%2F%2Fsite.icu-project.org%2Fdownload&sa=D&sntz=1&usg=AFQjCNH1JtxAMs3yLN5YxuiZ1ZLMHQkNQg> exactly icu4c-4_8_1_1-Win64-msvc10.zip)
3) copy files form ICU icudt48.dll, icuin48.dll and icuuc48.dll to ..\Firebird\bin\
4) edit file fbintl.conf in ..\Firebird\intl\  , change section intl_module builtin to this (only added 4.8 after default):
<intl_module builtin>
    icu_versions    default 4.8
</intl_module>
5) restart firebird server
6) create new collation
create collation UNICODE_CSCZ_CI
   for UTF8
   from UNICODE
   case insensitive
   'LOCALE=cs_CZ;ICU-VERSION=4.8';
Then I can use Czech national sorting :-) it was great... I was happy...
 
But today... I have problem...
Now I tried use these steps for Firebird 2.5.3.26778 and there is something wrong :(
When I tried:
create collation UNICODE_CSCZ_CI
   for UTF8
   from UNICODE
   case insensitive
   'LOCALE=cs_CZ;ICU-VERSION=4.8';
I get error message:
This operation is not defined for system tables.
unsuccessful metadata update.
Invalid collation attributes.
 
So I was tried my old "steps" and Firebird 2.5.2 and ICU 4.8.1.1... and it was wrong too... :(
I used all combination Firebird 2.5.2 and 2.5.3. with ICU 4.8.1.1. and ICU 54.1 on win7 32bit, win7 64bit, win xp 32bit... and in fbintl.conf i tried too only
<intl_module builtin>
    icu_versions    4.8
</intl_module>
 
Can you help me? What is wrong? It seems that firebird server doesnt use added ICU library...
 
Thank you
 
ZSE






[Non-text portions of this message have been removed]