Subject Re: [firebird-support] Re: win1252 and upper()
Author Pavel Menshchikov
Hello Colin,

c> thank you very much for replying. I've added a few columns for test
c> purposes :
c> X1 VARCHAR(50) CHARACTER SET WIN1252 COLLATE PXW_INTL,
c> X2 VARCHAR(50) CHARACTER SET WIN1252 COLLATE PXW_INTL850,
c> X3 VARCHAR(50) CHARACTER SET WIN1252 COLLATE PXW_NORDAN4,
c> X4 VARCHAR(50) CHARACTER SET WIN1252,
c> X5 VARCHAR(50) CHARACTER SET WIN1252 COLLATE PXW_SPAN,
c> X6 VARCHAR(50) CHARACTER SET WIN1252 COLLATE PXW_SWEDFIN

c> I then performed :

c> update the_table
c> set x1 = upper('Dogné'), x2 = upper('Dogné'), x3 = upper('Dogné'),
c> x4 = upper('Dogné'), x5 = upper('Dogné'), x6 = upper('Dogné')
c> where the_key = 36545;

c> The 'é' is alt-0233, and looking with a hex editor = x'E9'.
c> The results in all six of the columns is 'DOGNé'.

c> Any further thoughts?
Yes. Try
upper('Dogné' collate <collation_that_fits_your_needs>)
(note that collations define characters' order also, so you should
choose the collation that support an order you need).


HTH
--
Best regards,
Pavel Menshchikov
http://www.ls-software.com