我试图查明Azure 逻辑应用程序是否能够迭代存储过程中的选择语句。我已经创建了我的逻辑应用程序,它传递一个字符串以传递给存储过程。
这个逻辑应用程序正在工作,因为我得到了第一个 select 语句的结果,但无法到达其余的结果。
我的 SQL 示例:
SELECT AIP.*
FROM Item_Price AS AIP
WHERE IP.id = @Parameter
SELECT AII.*
FROM Item_Identification AS II
WHERE II.id = @Parameter
SELECT CP.*
FROM Catalogue_Price AS CP
WHERE CP.id = @Parameter
目前我正在取回尸体
{
"ResultSets": {
"Table1": [
{
"id": "123",
"price": "123.00"
"name": "test Item"
}
]
},
"OutputParameters": {}
}
我缺少存储过程中接下来两个 select 语句的结果,有没有办法可以迭代并获取其余数据,或者逻辑应用程序无法执行此操作?
我确实同意,如果您使用本地 sql,则只会返回第一个 select 语句输出,因为这是连接器的限制。
当前对 SQL 本机查询执行的多结果集支持受到限制。仅返回结果集,直到第一个空结果集为止
如果您不使用本地部署,那么您将获得包含所有返回的输出,以下是我的设计:
Sql 存储过程:
CREATE PROCEDURE RithTest
AS
BEGIN
SELECT TOP (1000) * FROM [dbo].[T3] AS RR WHERE RR.id = 2;
SELECT TOP (1000) * FROM [dbo].[T2] AS BC WHERE BC.SNO = 2;
END;
输出:
{
"Table1": [
{
"ID": 2,
"Month": "2024-05-01T00:00:00",
"Condition1": "2024-05-01T00:00:00",
"Condition2": "2024-05-31T00:00:00"
}
],
"Table2": [
{
"SNO": 2,
"Name": "Rithwik"
}
]
}