我的工作看起来像是我尝试读取Mysql表的第一张图片,
并根据FROM_DATE字段拆分表。作业步骤如下:


使用tMap创建一列StringFromDate-> TalendDate.formatDate(“ yyyy-MM-dd”,row1.FROM_DATE)
将tMapOutput连接到tFlowToIterate
将tFlowToIterate连接到tFixedFlowInput。 tFixedFlowInput组件配置显示在下面的第二个图像中
将tFixedFlowInput连接到tLogRow
将tLogRow连接到tMysqlOutput。 tMysqlOutput组件设置如第三幅图所示。


问题在于表仅使用1行数据生成。当我尝试收集csv文件中的数据时,此设置与tFileOutputDelimited中的append选项配合使用时效果很好。

请,需要立即的帮助。

mysql - 在日期列上拆分Mysql表,并将结果存储在具有动态名称的不同表中-LMLPHP

mysql - 在日期列上拆分Mysql表,并将结果存储在具有动态名称的不同表中-LMLPHP

mysql - 在日期列上拆分Mysql表,并将结果存储在具有动态名称的不同表中-LMLPHP

最佳答案

问题是由tMysqlOutput设置drop table if exists and create引起的,该设置可以在每次迭代时有效地重新创建表。因此,表中最后一行是与上一次迭代相对应的那一行。
尝试使用设置create table if not exists
另外,根据您的后续问题,您需要在OnComponentOk -- tMysqlCommit之后添加tMysqlOutput(取消选中关闭连接)以提交插入。

关于mysql - 在日期列上拆分Mysql表,并将结果存储在具有动态名称的不同表中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48821487/

10-11 03:10