我正在尝试Charset
为我的Firebird
连接设置连接,Pentaho DI
但仍然无法以正确的编码读取数据。
我使用了许多参数,如encoding
, charSet
,... 等,但没有运气。
纠正我我错过了什么?
您要么需要使用字符集encoding
的Firebird名称,要么需要使用字符集charSet
的Java名称 (*)。
WIN1256
不是有效的 Java 字符集名称,因此连接将失败。如果您指定charSet
,那么您需要使用 Java 名称Cp1256
或 - 对于 Jaybird 2.2.1 或更新版本 - windows-1256
。
如果这不起作用,那么 Pentaho 没有正确传递连接属性,或者您的数据存储在NONE
具有不同编码的字符集的列中WIN1256
(或更糟:存储在具有字符集的列中WIN1256
,但数据实际上是不同的编码)。
*:从技术上讲,您可以组合encoding
and charSet
,但这仅适用于您希望 Firebird 以一个字符集读取数据并让 Jaybird 以另一个字符集解释它的特殊用例。