Azure数据工厂将数据从Azure Blob存储复制到Azure SQLDB时错误地复制单元格值

时间:2020-02-19 22:44:45

标签: database azure azure-sql-database azure-blob-storage azure-sql-data-warehouse

我正在使用Azure构建购物清单应用程序。

当前,我有一个Azure函数将json文件写入blob存储。这是我当前的Blob存储的外观: picture of my data in blob storage from ADF 当Azure数据工厂将数据复制到我的SQL DB时,看起来是这样的: picture of my grocery list table 这是我用来创建表的代码:

-- Create a new table called 'groceryitems' in schema 'grocerylistapp'
-- Drop the table if it already exists
IF OBJECT_ID('grocerylistapp.groceryitems', 'U') IS NOT NULL
DROP TABLE grocerylistapp.groceryitems
GO

CREATE SCHEMA grocerylistapp
GO

-- Create the table in the specified schema
CREATE TABLE grocerylistapp.groceryitems
(
    id INT IDENTITY(1,1), -- Primary Key column
    epoch DATE,
    [name] VARCHAR(50),
    PRIMARY KEY CLUSTERED([id] ASC)
    -- Specify more columns here
);
GO
1

奇怪的是,当我最初使用Data Warehouse / Synapse进行此操作时,我没有遇到这个问题,因此我认为这特别是与SQL DB有关。

我还想补充一点,它会随机决定扭曲一行,如果我在blob存储中有3,4或5个项目,它将选择一行并将其扭曲,如屏幕截图所示。它并不总是同一项目。

谢谢。

1 个答案:

答案 0 :(得分:0)

首先,请确保已选择json格式文件作为Soure数据集。

这是我测试过的步骤,效果很好。

来自Blob存储的源数据集(json格式):

enter image description here

导入源数据集的图式: enter image description here

接收器数据集设置:

enter image description here

映射设置:

enter image description here

运行管道:

enter image description here

检查表grocerylistapp.groceryitems中的数据:

enter image description here

希望这会有所帮助。