【问题标题】:Error when using ADF to copy from SQL Server to ADW使用 ADF 从 SQL Server 复制到 ADW 时出错
【发布时间】:2018-01-27 12:18:33
【问题描述】:

我在使用 ADF 时遇到以下错误,我的源是本地 SQL Server,目标是 ADW。请对此有所了解:

数据库操作失败。来自数据库执行的错误消息:

ErrorCode=FailedDbOperation,'Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message=将数据加载到 SQL 数据仓库时发生错误,Source=Microsoft.DataTransfer.ClientLibrary,''Type=System.Data.SqlClient. SqlException,Message=Query aborted - 从外部源读取时达到最大拒绝阈值(0 行):在处理的总共 1 行中拒绝 1 行。 (/22799e45-a078-4f43-9050-87294328db61/Data.28013af9-5443-4bc1-bfd4-b0299552069d.txt)列序号:4,预期数据类型:VARCHAR(800)整理SQL_Latin1_General_CP1_CI_AS NOT NULL,违规值:

【问题讨论】:

  • ADF 不会将空白值复制到 ADW 吗?
  • 看起来它在第一行出错时停止了。根据表的列检查行中的值,以确保您没有尝试加载列不允许/不支持的数据。例如。 null 进入非空列。

标签: sql-server azure azure-data-factory azure-sqldw


【解决方案1】:

这是通过使用带有 HASH 分布的 varchar(MAX) 解决的,因为我的源包含一个文本数据类型,它包含一些大于 8k 字符的值,并且 polybase 不支持最大值,

因此不得不复制没有 polybase 的数据并使用 varchar(MAX) 代替文本。

当我运行管道时,所有数据都被复制到 ADW 中。

【讨论】:

    猜你喜欢
    • 2018-07-16
    • 2017-04-01
    • 2022-12-01
    • 2018-11-21
    • 1970-01-01
    • 1970-01-01
    • 2013-01-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多