gpt4 book ai didi

xml - Pentaho : How to convert a string datatype into XML datatype using pentaho transformation

转载 作者:行者123 更新时间:2023-11-29 12:12:48 27 4
gpt4 key购买 nike

有需求从CSV文件中提取数据,然后将其转换为XML,最终加载到目标中。

CSV文件中的数据为

Number,Email,Email Communication,Member Type,VIN
85320000399,test@hotmail.com,TRUE,CANLAN,TEST
81890000887,test@hotmail.com,TRUE,CANLAN,TEST
85480001175,xx@live.ca,TRUE,CANLAN,TEST
85370001847,abc@hotmail.com,TRUE,CANLAN,TEST
85500000418,123ftremblay.ca,TRUE,CANLAN,TEST

XML 格式

<MemberUpdate>
<MemId>85320000399</MemId>
<emailAddress>test@gmail.com</emailAddress>
<optInFlag>true</optInFlag>
<memberType>CANLAN</memberType>
</MemberUpdate>

POSQTGRESQL 表列是 XML 数据类型

我创建了一个转换来执行上述操作,但出现错误。

ERROR: column "content" is of type xml but expression is of type character varying.
Hint: You will need rewrite or cast the expression.

enter image description here

当我将本地数据库中的表数据类型更改为“字符变化”时,转换成功运行。但我想在不对数据库进行任何更改的情况下执行此操作。因为我们无法对“Prod 数据库”进行任何更改。我正在寻找一种方法将“ADD XML”转换生成的 xml 字符串输出转换为实际的 XML。

最佳答案

enter image description here

所以这就是我所做的,我从“表输出”中删除了 XML 列,然后我添加了一个“阻止此步骤直到步骤完成”转换以等待目标加载所有列(期望 XML)。然后我使用了“执行 SQL 脚本”,在其中运行了以下脚本

UPDATE workflow_transaction SET content_data = ('?' ::xml) where workflow_transaction_id = ?

此处更新通过将 ADD XML 步骤的字符串输出转换为实际 XML 来更新表并将值插入 XML 列。

我不太清楚我的答案有多正确,但我使用样本数据得到了想要的结果。 future 可能会或可能不会出现并发症,但它符合我现在的目的。 :)

关于xml - Pentaho : How to convert a string datatype into XML datatype using pentaho transformation,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24038287/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com