我正在以 CSV 格式將 F&O D365 資料匯出到 ADLS。現在,我正在嘗試讀取存盤在 ADLS 中的 CSV,并使用 Azure 資料工廠將其復制到 Azure Synapse 專用 SQL 池表中。但是,我可以創建管道并且它適用于少數表而沒有任何問題。但是由于列數不匹配,一張表(銷售線)失敗了。下面是 CSV 格式示例,CSV 中沒有列名(標題),因為它是從 F&O 系統匯出的,列名存盤在 salesline.CDM.json 檔案中。
5653064010,,,"2022-06-03T20:07:38.7122447Z",5653064010,"B775-92"
5653064011,,,"2022-06-03T20:07:38.7122447Z",5653064011,"小包裹"
5653064012,,,"2022-06-03T20:07:38.7122447Z",5653064012,"somedata"
5653064013,,,"2022-06-03T20:07:38.7122447Z",5653064013,"someotherdata",,,,test1, test2
5653064014,,,"2022-06-03T20:07:38.7122447Z",5653064014,"包裹"
5653064016,,,"2022-06-03T20:07:38.7122447Z",5653064016,"B775-92",,,,,,test3
我創建了 ADF 管道,使用復制資料活動將資料從 ADLS(CSV) 復制到 Synapse SQL 表,但是我遇到了錯誤。
對目標 Copy_hs1 的操作失敗:ErrorCode=DelimitedTextMoreColumnsThanDefined,'Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message=Error found when processing 'Csv/Tsv Format Text' source 'SALESLINE_00001.csv' with row number 4 : found more columns比預期的列數 6 .,Source=Microsoft.DataTransfer.Common,'
列映射如下所示 - 因為 CSV 第一行有 6 列,所以它只在匯入模式時出現 6。

uj5u.com熱心網友回復:
我已經使用您的示例資料進行了復制,并在使用copy data活動復制檔案時遇到了同樣的錯誤。
或者,我嘗試使用復制檔案data flow并且能夠加載資料而沒有任何錯誤。
源檔案:

資料流:
Source dataset:僅讀取前 6 列,因為檔案中的第一行僅包含 6 列。

Source transformation:在源轉換中連接源資料集。

原始碼預覽:

Sink transformation:將接收器連接到突觸資料集。

設定:

映射:

接收器輸出:

- 運行資料流后,資料被加載到 sink synapse table。

轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/494961.html
標籤:CSV 天蓝色数据工厂 天蓝色数据湖 天蓝色数据湖-gen2 动态 365 操作
上一篇:將第一行寫入CSV檔案時出現問題
