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

如何查看Azure Data Factory复制数据操作执行的查询语句

解答

你遇到的报错属于ADF自动生成SQL语法缺陷导致的执行失败,报错原文如下:

ErrorCode=SqlOperationFailed,'Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message=A database operation failed. Please search error to get more details.,Source=Microsoft.DataTransfer.ClientLibrary,''Type=System.Data.SqlClient.SqlException,Message=Incorrect syntax near the keyword 'from'.,Source=.Net SqlClient Data Provider,SqlErrorNumber=156,Class=15,ErrorCode=-2146232060,State=1,Errors=[{Class=15,Number=156,State=1,Message=Incorrect syntax near the keyword 'from'.,},],'

完全可以查看Copy Activity实际运行时自动生成的查询语句,操作路径如下:

  • 进入对应失败管道运行的活动运行详情页
  • 定位到输入详细信息板块下的源端配置节点,其中query字段的值就是ADF根据你的拖拽配置自动拼接、实际下发到源数据库执行的完整SQL
  • 也可以直接在源SQL类数据库侧,通过扩展事件、sys.dm_exec_requests动态管理视图关联ADF访问的会话ID,直接抓取数据库侧实际接收到的执行语句

全拖拽配置场景下该报错的常见诱因

无自定义查询时出现这类语法错误,基本都是配置问题导致生成的SQL存在语法缺陷:

  • 源表的列名、表名、架构名使用了from这类SQL保留关键字,或者名称带空格、特殊字符,ADF自动生成SQL时未正确加[]做标识符转义,导致SQL解析断裂
  • 列映射、源端筛选规则配置中存在空值、未填写完成的规则项,拼接后出现类似select , from 表名、select from where这类缺省字段/条件的残缺SQL
  • 源数据集或复制活动源配置中,误选中了「自定义查询」模式但查询内容为空,ADF下发了空的/不完整的查询语句

排查修复步骤

  1. 先从活动运行详情里拿到自动生成的SQL,复制到SSMS等数据库客户端直接执行,就能直观定位到具体的语法错误位置
  2. 检查源端所有对象、字段的命名,对保留字、特殊字符名称手动加[]转义;如果是ADF自动转义失效的场景,可以临时切换到自定义查询模式,手动写全带正确转义的查询语句即可
  3. 逐页检查源配置、列映射、行筛选配置,删除所有空白、未配置完成的规则项,保存后重新运行即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 20:21:19