繁体   English   中英

UserErrorSqlBulkCopyInvalidColumnLength-Azure SQL数据库

[英]UserErrorSqlBulkCopyInvalidColumnLength - Azure SQL Database

我正在使用Azure Data Factory将Salesforce配置为Azure SQL数据库数据副本。 列长度​​似乎存在问题,但是我无法确定哪一列实际上是引起问题的原因。

我如何才能更深入地了解导致问题的原因? 或哪一列真正无效?

{
   "dataRead":18560714,
   "dataWritten":0,
   "rowsRead":15514,
   "rowsCopied":0,
   "copyDuration":34,
   "throughput":533.109,
   "errors":[
      {
         "Code":9123,
         "Message":"ErrorCode=UserErrorSqlBulkCopyInvalidColumnLength,'Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message=SQL Bulk Copy failed due to received an invalid column length from the bcp client.,Source=Microsoft.DataTransfer.ClientLibrary,''Type=System.Data.SqlClient.SqlException,Message=The service has encountered an error processing your request. Please try again. Error code 4815.\r\nA severe error occurred on the current command.  The results, if any, should be discarded.,Source=.Net SqlClient Data Provider,SqlErrorNumber=40197,Class=20,ErrorCode=-2146232060,State=1,Errors=[{Class=20,Number=40197,State=1,Message=The service has encountered an error processing your request. Please try again. Error code 4815.,},{Class=20,Number=0,State=0,Message=A severe error occurred on the current command.  The results, if any, should be discarded.,},],'",
         "EventType":0,
         "Category":5,
         "Data":{

         },
         "MsgId":null,
         "ExceptionType":null,
         "Source":null,
         "StackTrace":null,
         "InnerEventInfos":[

         ]
      }
   ],
   "effectiveIntegrationRuntime":"DefaultIntegrationRuntime (East US 2)",
   "usedCloudDataMovementUnits":4,
   "usedParallelCopies":1,
   "executionDetails":[
      {
         "source":{
            "type":"Salesforce"
         },
         "sink":{
            "type":"AzureSqlDatabase"
         },
         "status":"Failed",
         "start":"2018-03-01T18:07:37.5732769Z",
         "duration":34,
         "usedCloudDataMovementUnits":4,
         "usedParallelCopies":1,
         "detailedDurations":{
            "queuingDuration":5,
            "timeToFirstByte":24,
            "transferDuration":4
         }
      }
   ]
}

“消息”:“ ErrorCode = UserErrorSqlBulkCopyInvalidColumnLength,”类型= Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,消息=由于从bcp客户端接收到无效的列长度,SQL大容量复制失败。,Source = Microsoft.DataTransfer.ClientLibrary,' 'Type = System.Data.SqlClient.SqlException,Message =服务在处理您的请求时遇到错误。请重试。错误代码4815。\\ r \\ n当前命令发生严重错误。如果有的话,结果应该被丢弃。,Source = .Net SqlClient数据提供程序,SqlErrorNumber = 40197,Class = 20,ErrorCode = -2146232060,State = 1,Errors = [{Class = 20,Number = 40197,State = 1,Message =该服务具有遇到错误,正在处理您的请求。请重试。错误代码4815。,},{Class = 20,Number = 0,State = 0,Message =当前命令发生严重错误。如果有,则结果应为丢弃。

我在尝试将字符串从源复制到目标时看到了该错误,但是在目标上接收该字符串的列比源短。

我的建议是确保选择的数据类型在目标位置足够大,以便它们可以从源接收数据。 确保接收器也具有预览中显示的列。

要确定可能涉及的列,请从源中一一排除大列。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM