2016-04-05 3 views
0

Я пытаюсь установить соединение Charset для моего подключения Firebird, используя Pentaho DI, но все еще не смог прочитать данные в правильной кодировке.Установите кодировку для подключения Firebird от Pentaho DI

Я использовал множество параметров, таких как encoding, charSet, ... и т. Д. Но не повезло.

enter image description here

enter image description here

Поправьте меня, что я пропустил?

ответ

1

Вам необходимо либо использовать encoding с Firebird имя набора символов или charSet с Java имя набора символов (*).

WIN1256 не является допустимым именем набора символов Java, поэтому соединение не удастся. Если вы укажете charSet, вам необходимо использовать Java-имя Cp1256 или - с Jaybird 2.2.1 или новее - windows-1256.

Если это не работает, то либо Pentaho не правильно передает свойства соединения, или ваши данные хранятся в столбце с набором символов NONE в другой кодировке, чем WIN1256 (или хуже: хранить в столбце с набором символов WIN1256 , но данные на самом деле представляют собой другую кодировку).

*: Технически вы можете комбинировать encoding и charSet, но это только для особых случаев, когда вы хотите, чтобы Firebird считывал данные в одном наборе символов и Jaybird интерпретировал его в другом наборе символов.

+0

Я пробовал оба, но не повезло, я получил результат, как 'ÒßÑíÇ ÇáÍÌÇæí: ãæÇá ÇáÔÌä' .. Я думаю, что данные хранятся в формате' ANSI'. он содержит арабское письмо. когда я использовал клиент, например, «FlameRobin» и установил кодировку 'Windows-1256', он правильно считывает данные« Arabic ». Я использую Jaybird' 2.2.10' с Pentaho – Jason4Ever

+0

@ Jason4Ever Кажется, что Pentaho не проходит свойство соединения. Какую версию Pentaho вы используете? –

+0

Я использую чайник Pentaho CE v 5.0 – Jason4Ever