我有一个简单的工作,两个组件tMysqlRow通过Row / Main连接到tLogRow。
我在tMysqlRow组件中有一个简单的select语句,我直接在db上测试它并且它可以工作并返回一条记录。当我运行该作业时,它显示“0.04s中的1行”,所以我认为这意味着tMysqlRow组件从数据库获得1行。
在tLogRow组件中,我按下了基本选项卡上的“同步列”按钮,当我编辑架构时,我可以看到所有列都在那里。
但是当我运行这份工作时,会记录以下内容:
Starting job LoadContextVariablesFromDBRecordDemo at 13:07 30/09/2015.
[statistics] connecting to socket on port 3714
[statistics] connected
||||||
[statistics] disconnected
Job LoadContextVariablesFromDBRecordDemo ended at 13:07 30/09/2015. [exit code=0]
所以我不知道为什么没有记录这些值?
我在这里做错了什么?
此致
斯科特
答案 0 :(得分:2)
所以我从talend论坛得到一些建议告诉我:
你真的需要使用tMysqlRow组件吗?据我所知, tMysqlInput只是您需要的组件。它直接返回 查询的结果并将其传播到流中。 tMysqlRow 默认情况下,组件不处理返回的数据。如果你 被限制使用tMysqlRow组件,你必须检查 在tMysqlRow的高级设置中传播QUERY的记录集 组件然后使用tParseRecordSet组件来提取 数据。有关更多信息和指南,请参阅tMysqlRow 组件指南页面。还有一个如何做到这一点的例子。
在解决了tMysqlInput组件显示警告消息后,我遇到了另一个问题:
架构的dbType对于此组件
不正确
这也是在同一个线程中解决的。
此致
斯科特