International characters with Interbase


I need to write an application using Delphi 2.0 and Interbase that works
with international characters (especially german umlauts). I created the
Interbase database using the "default character set iso8859_1" option so
I can store them and they show up correctly.

My problem is, that I have a number of fields where I want to provide a
search function using the "LIKE" operator. Due to the fact that "LIKE" is
case sensitive I tried to use the "UPPER"-function before the comparison.
But the "UPPER"-function ignores the character set and leaves my umlauts
untouched. The Interbase documentation states that the character set only
changes the collation order but I was hoping they use it in the "UPPER"-
function as well :-(

Can anybody please help me with this problem? I don't want to duplicate
all fields (one to show them to the user and one to search in). I already
tried to find UDFs for this purpose (although I'm afraid that they would
ruin performance). Is there any way for interbase to "UPPER" strings
containing international characters? If not, what server databases can do

Any help is greatly appreciated. Please CC your reply to

Thank you


Thiemo Sammern