You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Data Factory使用Lookup同步增量数据报错无法定位原因求助

问题原因及解决方案

你遇到的报错是两个配置错误导致的,调整后即可正常运行:

  1. 数据类型不匹配错误
    reportline_id是数值类型的字段,你给动态取值部分套了单引号,会让数据库把后续传入的ID值识别为字符串,二者比较就会触发类型不匹配报错,直接去掉单引号即可。

  2. Lookup输出取值路径错误
    ADF的Lookup组件默认返回的单行结果会封装在firstRow对象下,你直接取.output.reportline_id取不到对应值,传入的就是空值或者非法值,也会触发查询报错。

另外你这里是取目标表最大ID做增量边界,建议先把LookupOld的查询语句调整为取最大值的写法,取值更稳妥,避免返回非最大ID导致漏同步:

-- LookupOld组件的查询语句,先取目标表当前最大的reportline_id
SELECT MAX(reportline_id) as max_id FROM dbo.report_line

调整后的源端查询语句如下:

Select * from dbo.report_line where reportline_id > @{activity('lookupOld').output.firstRow.max_id}

补充检查点

  • 确认LookupOld组件的「仅返回第一行」配置项处于开启状态
  • 可以先在调试界面查看LookupOld的输出日志,确认返回的max_id值是正确的80,再运行后续同步步骤

内容的提问来源于stack exchange,提问作者Alix

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 20:06:06