簡體   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