gpt4 book ai didi

mysql - tMySQLOutput 错误中出现重复 key ,但数据库中没有存储原始 key 。如何在 Talend DI 中解决?

转载 作者:行者123 更新时间:2023-11-29 22:37:05 25 4
gpt4 key购买 nike

我有一个 talend 作业,它将数据库表读入 tMap 并将结果存储在另一个数据库表中。目标表仅设置为“插入”,在运行作业之前,我删除目标表,因此它始终以全新方式开始。我有一个错误记录器来处理写入目标表的问题

我处理了大约 150k 行,其中 41k 行被认为主键 PRIMARY 存在重复条目。

虽然我确实希望在检查错误记录器时存在一些重复项,但在某些行中检测到重复键,但在目标表中找不到匹配的值。

有什么想法可能会发生什么吗?它很难理解,因为 tMap 组件上也有错误处理,但一旦从 tMap 发送批准的行到数据库表,这似乎是实际写入数据库表的问题

无论它的值(value)如何。我使用 Talend DI 5.6.1 读取和写入相同的数据库模式,但 MySQL db 5.6.17 上的不同表

如果它有用的话,我有许多使用相同源和目的地的子作业,但只是在每次执行时以不同的方式细化城市值源架构

<?xml version="1.0" encoding="UTF-8"?>
<schema dbmsId="mysql_id">
<column comment="" default="" key="true" label="Column22"
length="50" nullable="false" originalDbColumnName="Column22"
originalLength="0" pattern="" precision="0"
talendType="id_String" type="VARCHAR"/>
<column comment="" default="" key="false" label="city" length="50"
nullable="true" originalDbColumnName="city" originalLength="0"
pattern="" precision="0" talendType="id_String" type="VARCHAR"/>
<column comment="" default="" key="false" label="CountryCode"
length="3" nullable="true" originalDbColumnName="CountryCode"
originalLength="0" pattern="" precision="0"
talendType="id_String" type="VARCHAR"/>
<column comment="" default="" key="false" label="svc_area_code"
length="20" nullable="true" originalDbColumnName="svc_area_code"
originalLength="0" pattern="" precision="0"
talendType="id_String" type="VARCHAR"/>
</schema>

目标架构

<?xml version="1.0" encoding="UTF-8"?>
<schema dbmsId="mysql_id">
<column comment="" default="" key="true" label="Column22"
length="50" nullable="true" originalDbColumnName="Column22"
originalLength="0" pattern="" precision="0"
talendType="id_String" type="VARCHAR"/>
<column comment="" default="" key="false" label="city" length="50"
nullable="true" originalDbColumnName="city" originalLength="0"
pattern="" precision="0" talendType="id_String" type="VARCHAR"/>
<column comment="" default="" key="false" label="CountryCode"
length="3" nullable="true" originalDbColumnName="CountryCode"
originalLength="3" pattern="" precision="0"
talendType="id_String" type="VARCHAR"/>
<column comment="" default="" key="false" label="svc_area_code"
length="20" nullable="true" originalDbColumnName="svc_area_code"
originalLength="20" pattern="" precision="0"
talendType="id_String" type="VARCHAR"/>
</schema>

最佳答案

您始终可以尝试进行合并插入,这将更新键重复项上的行。

关于mysql - tMySQLOutput 错误中出现重复 key ,但数据库中没有存储原始 key 。如何在 Talend DI 中解决?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29502860/

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