用于数据集成的Talend open studio:如何在xml中转换记录的字段并将其存储在同一记录的字段中

时间:2016-02-26 11:54:48

标签: xml postgresql etl talend

希望有人可以提供帮助,因为我在同样的问题上挣扎了好几天。

我必须在带有talend open studio的postgres数据库中读取一些csv数据以进行数据集成。到目前为止这么好,但我正在努力解决一个问题。对于csv文件中的每一行,我必须在db中保存一个包含该行的xml视图的字段,例如:

 <tablename><column1>value_of_column_one</column1><column2>value_of_column2</column2>...</tablename>). 

每行标记<tablename>都相同。

一个有效的解决方案是连接行的不同字段的值并手动连接xml标记:

"<tablename>"+"<column1>"value+"</column1>".... 

但这不是一个好的解决方案。我希望有一个聪明的解决方案,包含Talend的XML构建块。

所以我尝试了使用tXMLmap和tWriteXMLField的解决方案,但问题是这些块为数据库中的每条记录生成XML文件中每一行的组合。因此,不仅记录1的XML结构存储在记录1的字段中,而且记录2的XML结构也存储在记录1的字段中,依此类推......

我唯一要做的就是将记录1的XML结构存储在记录1的字段中,并将记录2的字段结构存储在记录2的字段中,...

有人能告诉我正确的方法吗?非常感谢。

亲切的问候

1 个答案:

答案 0 :(得分:0)

如果要为Talend中的一组字段创建xml文件。您无需使用任何组件。相反,在数据库连接的模式对话框或输入文件中,底部有一个图标,有助于以xml格式保存模式。

基本上,您可以通过单击类似的图标将现有架构上传到Talend工具,而不是手动编写所有字段及其参数。