Subject | Charset problem using ISO8859_1 and UNICODE_FSS |
---|---|
Author | fdtellog |
Post date | 2005-06-05T18:51:41Z |
I created a new DB with UNICODE_FSS charset using flamerobin. I ran a
few queries:
CREATE TABLE equipo (id id_type PRIMARY KEY, nombre name_type,
nombre_completo name_type)!
and
insert into EQUIPO (ID,NOMBRE,NOMBRE_COMPLETO) values
(10,'Vélez','Vélez Sarsfield');
Notice the é characters. If I query the DB with flamerobin I see
all
OK, but from Squirrel (using JayBird 1.5.5_JDK14) running under Linux
with Sun's JVM 1.5.0 Update 2 I see the é (and all other ASCII >
127)
characters as ugly white boxes. Here's my connection URL
jdbc:firebirdsql://localhost:3050//var/db/jgoal2.f
db?lc_ctype=UNICODE_FSS
If I try to edit the values from the data view (using make editable)
it does not alow me to change them on that rows, but no problems on
any other. The weird thing is I can enter é when editing other
rows,
but not on the one showing the ugly white box.
If I run
update equipo set nombre = 'Vélez' where id = 10;
from squirrel everything looks fine now under squirrel, but flamerobin
shows
10 Vélez Vélez Sarsfield
Notice the character I did not update show OK, but not the one I
updated.
Now Under squirrel this is what I see
10 Vélez V�lez Sarsfield
From my application, not Squirrel, where use the same JayBird Driver
I see the same I see from Squirrel.
Originally I was using ISO8859_1 charset for the DB, but now while
trying to avoid this problem I migrated everything to UNICODE_FSS, but
this difference between java and flamerobin persists.
There's an abvious difference in the way both applications are
treating characters, since when one looks OK the other looks bad and
fixing it using one tool brakes it in the other.
Any clues?
few queries:
CREATE TABLE equipo (id id_type PRIMARY KEY, nombre name_type,
nombre_completo name_type)!
and
insert into EQUIPO (ID,NOMBRE,NOMBRE_COMPLETO) values
(10,'Vélez','Vélez Sarsfield');
Notice the é characters. If I query the DB with flamerobin I see
all
OK, but from Squirrel (using JayBird 1.5.5_JDK14) running under Linux
with Sun's JVM 1.5.0 Update 2 I see the é (and all other ASCII >
127)
characters as ugly white boxes. Here's my connection URL
jdbc:firebirdsql://localhost:3050//var/db/jgoal2.f
db?lc_ctype=UNICODE_FSS
If I try to edit the values from the data view (using make editable)
it does not alow me to change them on that rows, but no problems on
any other. The weird thing is I can enter é when editing other
rows,
but not on the one showing the ugly white box.
If I run
update equipo set nombre = 'Vélez' where id = 10;
from squirrel everything looks fine now under squirrel, but flamerobin
shows
10 Vélez Vélez Sarsfield
Notice the character I did not update show OK, but not the one I
updated.
Now Under squirrel this is what I see
10 Vélez V�lez Sarsfield
From my application, not Squirrel, where use the same JayBird Driver
I see the same I see from Squirrel.
Originally I was using ISO8859_1 charset for the DB, but now while
trying to avoid this problem I migrated everything to UNICODE_FSS, but
this difference between java and flamerobin persists.
There's an abvious difference in the way both applications are
treating characters, since when one looks OK the other looks bad and
fixing it using one tool brakes it in the other.
Any clues?