Subject Re: [firebird-support] Re: win1252 and upper()
Author Ivan Prenosil
Your table has defined collations, but the data you are uppercasing don't. Try

update the_table
set x1 = upper('Dogné' COLLATE PXW_SPAN), ...

or

update the_table
set x1 = upper(_WIN1252 'Dogné' COLLATE PXW_SPAN), ...

or

update the_table
set x1 = upper(x1), ...


Ivan
http://www.volny.cz/iprenosil/interbase/

----- Original Message -----
From: "colinriley666" <colin.riley@...>
To: <firebird-support@yahoogroups.com>
Sent: Thursday, April 14, 2005 3:02 PM
Subject: [firebird-support] Re: win1252 and upper()




Hello Pavel,

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

I then performed :

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

The 'é' is alt-0233, and looking with a hex editor = x'E9'.

The results in all six of the columns is 'DOGNé'.

Any further thoughts?

regards, Colin