在Azure数据工厂中执行PostgreSql存储过程

3

我有一个要求,需要使用Azure Data Factory执行Azure PostgreSQL存储过程。是否有办法做到这一点?我发现存储过程活动仅支持SQL存储过程。

基本上,我在PostgreSQL中有一些分段表,并希望将数据加载到目标表中(在PostgreSQL中)。我编写了一些存储过程来应用转换和加载数据。我想在ADF中运行这些存储过程。是否有其他建议的选项来实现此目的。谢谢!


你是说“只支持SQL存储过程”是什么意思?只支持使用language sql的存储过程,而不支持使用language plpgsql的存储过程?这似乎很奇怪,为什么会有区别呢?因为你可以以完全相同的方式调用这两种类型的存储过程。 - user330315
正如您所发现的那样,StoredProcedure活动仅支持连接(LinkedService)到SQL Server变体,因此不支持PostgreSql。您可以尝试使用Azure函数将调用委托给PostgreSQL,在管道中轻松消耗。 - undefined
你可以尝试在COPY活动中添加一个脚本,其中执行存储过程。例如:EXEC <Procedure_Name> - undefined
谢谢Pratik Somaiya。我目前正在使用这种方法,但是在寻找是否有其他更好的方式。我需要加载大约700个表格,所以我正在创建一个动态管道,并且不能为每个表格在复制活动中提供单独的脚本。因此,我正在研究是否还有其他选项。 - undefined
2个回答

2

有一种方法可以从Azure Synapse Analytics或Azure数据工厂执行PostgreSQL函数。使用查询为“select function-name()”的查找活动。


0

是的,存储过程活动不支持 Azure PostgreSQL 存储过程。它只支持 Azure SQL 数据库、Azure Synapse Analytics 和 SQL Server 数据库。所以您可以尝试像 Joel 提到的那样使用 Azure 函数 来代理对 PostgreSQL 的调用。


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