如何在Azure Data Factory v2中运行SQL脚本?

20

Azure Data Factory V2中没有Sql Script活动。那么我如何在数据库中创建存储过程和模式?我有哪些选择?


目前在Azure Data Factory中没有运行SQL脚本的方法。您应该能够直接在要运行它的数据库中创建存储过程,并使用ADF“存储过程”活动执行。 - Sumit B
现在有:https://dev59.com/alUK5IYBdhLWcg3w4jQv#71339898 - Lukasz Szozda
4个回答

27

我同意,SSIS没有类似于“Execute SQL任务”的功能确实让人失望。通常我会使用“LookUp”活动,因为我不喜欢为可以成为一行命令的简单任务创建过程。查找活动的唯一限制是它需要某种输出结果集。所以当我需要运行更新语句时,我会这样做:

enter image description here

虚拟查询select 0 id将数据“提供”给查找活动,因此它能够在数据库上运行指令集。

编辑:当我第一次写这篇文章时,我没有找到其他方法,答案是出自我的个人经验。然而,微软后来添加了一个“脚本活动”(参见Lukasz的答案),现在肯定是更好的选择。


9

6
可以使用脚本活动来实现:

通过使用脚本活动,您可以执行常见数据操作语言(DML)和数据定义语言(DDL)操作。 DML语句(例如SELECT、UPDATE和INSERT)使用户能够在数据库中检索、存储、修改、删除、插入和更新数据。DDL语句(如CREATE、ALTER和DROP)允许数据库管理员创建、修改和删除数据库对象,例如表、索引和用户。

enter image description here

来源:https://learn.microsoft.com/zh-cn/azure/data-factory/media/transform-data-using-script/inline-script.png

相关链接:在 Azure Data Factory 和 Synapse Pipelines 中使用新的“脚本”活动执行 SQL 语句


0

只是提供另一种选择,我将分享我以前的做法。

  1. 创建一个"存储过程"活动
  2. 在"存储过程名称"的设置中,标记为编辑,然后输入:sp_executesql
  3. 在存储过程参数下,添加一个名为"statement"的新参数,在"value"中放置您的SQL命令。

这也适用于动态内容。关于此过程的参考资料在这里

祝好


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接