总结一下这个问题:
- 当 DB 编码为 Western ISO 8859-2 时,在 Java 1.5 (JDBC) 中检索字符串可以正常工作
- 当切换到东欧 ISO(例如 ISO 8859-5)时,所有正常的 JDBC 字符串转换都可以工作,除了那些涉及 Oracle 集合的转换,例如对象的嵌套表。我得到的不是正确的字符串,甚至是简单的字符串,例如“1”,而是“???” (三个问号)代替。
我尝试了以下 10.2.0.4 JDBC Jar 文件,但无济于事:
- ojdbc14.jar
- orai18n.jar
我还尝试了 CHAR 和 VARCHAR2 并且两者的行为相同。