Ошибка в Pentaho Data Integrator - неверная последовательность байтов для кодировки "UTF8": 0x00 - PullRequest
0 голосов
/ 01 июля 2018

Ошибка при вставке групповых строк с помощью Pentaho Data Interrogator. Я использую PostgreSQL

ERROR: invalid byte sequence for encoding "UTF8": 0x00 

Ответы [ 3 ]

0 голосов
/ 23 июля 2018

"UTF8": 0x00 = "нулевой символ". Вы можете использовать шаг «Modified Javascript», а затем применить шаблон маски следующим образом:

function removeNull(e) {

if(e != null)
    return e.replace(/\0/g, '');
else
    return '';
}

var replacedString = removeNull(fieldToRemoveNullChars);

Выберите новое поле для вывода модифицированного JavaScript и вуаля !. Используйте для решения этой проблемы с входящими данными AS400.

0 голосов
/ 24 августа 2018

Наконец-то я получил решение:

  • В таблице ввода установите флажок «Включить ленивое преобразование»
  • Войдите в шаг «Выбор значений». Выберите все поля и на принудительной вкладке «Метаданные», введя кодировку «UTF-8» для всех полей.
0 голосов
/ 01 июля 2018

PostgreSQL является очень строгим содержимым текстовых полей и не допускает 0x00 в кодированных полях utf8. Вы должны исправить свои входные данные.

Некоторое возможное решение https://superuser.com/questions/287997/how-to-use-sed-to-remove-null-bytes

...