如何利用数据工厂将多个CSV文件从BLOB批量复制到多个SQL数据库表 [英] How to bulk copy multiple csv files from blob to mutliple sql database tables with data factory

查看:13
本文介绍了如何利用数据工厂将多个CSV文件从BLOB批量复制到多个SQL数据库表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试将BLOB存储中的不同CSV文件复制到非常自己的SQL表中(我想自动创建这些表)。我看到了很多问题,但我还没有看到任何可以回答这个问题的问题。

目前,我有一个getMETADATA函数,该函数获取一个子项列表以获取文件名,并有一个Foreach循环,但我不知道如何将它们发送到每个文件的不同表。

推荐答案

更新:
当我第二次运行它时。它将向表中添加新行。


我创建了一个简单的测试,它运行良好。这是我存储在Azure Data Lake中的CSV文件。

然后,我们可以使用管道将此CSV文件复制到Azure SQL表中(自动创建这些表)。

  1. GetMetaData1活动中,我们可以设置包含CSV文件的文件夹的数据集 并在数据集中选择First row as header
2.在ForEach1活动中,我们可以通过表达式@activity('Get Metadata1').output.childItems访问文件列表。

3.在ForEach1活动中,我们可以使用与GetMetaData1活动具有相同数据源的Copy data1活动。在source选项卡中,我们可以键入动态内容@item().name。我们可以使用@item().name来获取文件名。

  1. sink选项卡中,我们应该选择Auto create table 在Azure SQL数据集中,我们应该键入schema name动态内容@replace(item().name,'.csv','')作为其表名。因为动态创建表需要此信息。

  2. 调试结果如下:

这篇关于如何利用数据工厂将多个CSV文件从BLOB批量复制到多个SQL数据库表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆