![](/img/trans.png)
[英]How to Add default date in json for copy activity in azure data factory(adf) while dynamic mapping of columns between SQL source and sink
[英]Azure Data Factory schema mapping not working with SQL sink
我有一個簡單的管道,可將數據從 csv 文件加載到 Azure SQL 數據庫。
我添加了一個數據流,確保所有模式都與 SQL 表匹配。 我有一個特定字段,其中包含帶前導零的數字。 source - projection 中的數據類型設置為字符串。 該字段映射到顯示為字符串數據類型的 SQL 接收器。 SQL 中的字段具有 nvarchar(50) 數據類型。
管道運行后,所有前導零都將丟失,並且該字段似乎被視為十進制:
Original data: 0012345
Inserted data: 12345.0
數據預覽中顯示的 CSV 數據顯示正確,但由於某種原因,它在插入過程中丟失了格式。
有什么想法可以讓它正確插入嗎?
非常感謝您的回復。
根據您的帖子,DF 數據流似乎工作正常。 我終於發現了轉換的問題 - 我有一個 Azure 批處理服務,它運行一個 python 腳本,它進行基本轉換並將 output 保存到一個 csv 文件。
有趣的是,當我預覽數據流中的數據時,它看起來和預期的一樣。 但是,存儲在 SQL 中的值不是。
為了其他人有類似問題,我現有的 python 腳本用於將“float”數據類型列轉換為字符串類型。 轉換后,它過去常常保留 1 個十進制數,但由於我所有的數字都是整數,所以它們以 .0 結尾。
解決方案是將值轉換為 integer,然后再轉換為字符串:
df['col_name'] = df['col_name'].astype('Int64').astype('str')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.