Pentaho Data Integrator中的错误-编码“ UTF8”的字节序列无效:0x00

时间:2018-07-01 06:43:56

标签: postgresql pentaho-data-integration

使用Pentaho Data Interrogator插入批量行时出错。我正在使用PostgreSQL

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul id="menu">
  <li id="menu-item-1" class="menu-item" data-item="Research" data-dt='01/08'><a href="#research">01/08</a></li>
  <li id="menu-item-2" class="menu-item" data-item="Awards" data-dt='03/08'><a href="#awards">02/08</a></li>
  <li id="menu-item-3" class="menu-item" data-item="Education" data-dt='03/08'><a href="#education">03/08</a></li>
  <li id="menu-item-4" class="menu-item" data-item="Publications" data-dt='04/08'><a href="#publications">04/08</a></li>
</ul>

3 个答案:

答案 0 :(得分:0)

PostgreSQL是文本字段的非常严格的内容,不允许在utf8编码的字段中使用0x00。您应该修复输入数据。

一些可能的解决方案https://superuser.com/questions/287997/how-to-use-sed-to-remove-null-bytes

答案 1 :(得分:0)

“ UTF8”:0x00 =“空字符”。您可以使用“修改的Javascript”步骤,然后按如下所示应用掩码模式:

function removeNull(e) {

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

var replacedString = removeNull(fieldToRemoveNullChars);

为“修改的Javascript”输出选择新字段,然后输入voilla!。用于使AS400传入数据出现此问题。

答案 2 :(得分:0)

最后我得到了解决方案:

  • 在“表输入”中,选中“启用延迟转换”选项
  • 输入“选择值”步骤,通过为所有字段输入“ UTF-8”编码,在“元数据”选项卡上选择所有字段。