Subject Cannot transliterate character between character sets
Author Thiago Costa
Dear friends,

I´m developing with jaybird JDBC driver and i found some problems with
character sets convertion.

I´m developing with java servlets under windows and i´ll publicate on
linux. I´m using tomcat to publicate my servlets. When i use windows
the page showed is correctly, but when i put the servlet under windows
the especial characters appers with "?". I resolved the problem
putting a lc_ctype parameter in the string connection like:

"org.firebirdsql.jdbc.FBDriver",
"jdbc:firebirdsql:marte/3050:freire?lc_ctype=ISO8859_1", ...

With lc_ctype the characters appears correctly, but i found some
problems with some queries with string concatenation. The problem is:

I have a table RAIS_ADMISSAO with the folowing fields:

ADM_COD - smallint
ADM_DS - varchar 255
CAG_COD - smallint

I want to make the folowing query:

select ADM_COD, CAST(ADM_COD AS VARCHAR (2)) || ' - ' || ADM_DS AS
ADMISSAO from RAIS_ADMISSAO

When the lc_ctype is not set, the query runs without erros, but when
the lc_ctype=ISO8859_1 is set a have the flowing exception:

org.firebirdsql.jdbc.FBSQLException: GDS Exception. 335544321.
arithmetic exception, numeric overflow, or string truncation
Cannot transliterate character between character sets
...


Please, anyone knows how to resolve these problem???

Thank you very much and sory my poor english

Thiago Alves Costa