意向声明:
我正在尝试自动化工作流程,定期将数据从 Sharepoint 中的 CSV 移动到 Azure SQL 数据库中的表中。我到目前为止已经了解了 1) 格式化 JSON 数组,以及 2) 创建一个成功获取 JSON 数组文本的 SPROC,并将其导入到相应的表中。
数组看起来像:
JSON = [{"col1":"col1Data","col2":"col2Data", ...}, <600-some more iterations>]
在 SQL Management Studio 中调用存储过程如下所示:
EXECUTE SprocName @json=N'<text of JSON above>'
==============================================
问题:
缺乏文档允许我正确格式化以下两个 SQL 连接器参数之一以将这两个语句链接在一起:
两者Execute a Query (v2)和 Execute a Stored Procedure (v2)要求提供参数或查询文本,但没有指示所述参数应如何格式化。
例如,在执行采用单个参数 @json 的存储过程时,以下文本“看起来”正确,但会导致错误:
“body”:“@json=N'+@string(outputs('Convert_Rows_To_Json').body)+'”
错误: 无法保存逻辑应用 UpdateDomainCoverage。模板验证失败:“第 1 行和第 3148 列的模板操作“Execute_stored_procedure_(V2)”无效:“模板语言表达式 'json=N'+@string(outputs('Convert_Rows_To_Json')。 body)+'' 无效:位置 '4' 处的字符串字符 '=' 不是预期的。".'.
我已经尝试了许多变体,无论是执行存储过程上的@json参数,还是简单地在执行SQL中从整个结构构建查询,都无济于事。有建议吗?
最佳答案
以下是代码 View 中的示例,该示例使用采用日期时间值的参数“from”调用存储过程。当您在设计器中选择存储过程时,它应该显示要填充的所有参数。
"Get_jobs": {
"inputs": {
"body": {
"from": "@{convertFromUtc( variables('SelectTime'), variables('timeZone'), 'yyyy-MM-dd HH:mm:ss')}"
},
"host": {
"connection": {
"name": "@parameters('$connections')['sql_2']['connectionId']"
}
},
"method": "post",
"path": "/datasets/default/procedures/@{encodeURIComponent(encodeURIComponent('[dbo].[GetJobs]'))}"
},
"runAfter": {
"Refresh_data_for_BI": [
"Succeeded"
]
},
"type": "ApiConnection"
},
关于sql - 无法从 Azure 逻辑应用调用 SPROC - 找不到参数的语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60513343/