Azure SQL 数据仓库 - 参数化 SSIS 源查询

标签 azure ssis azure-synapse

我想将我的 Azure DW 作为 SSIS 数据流的一部分进行查询。我使用 oleDb 源来执行此操作,但是当我尝试配置参数时,出现以下错误。

Stored procedure sp_describe_undeclared_parameters does not exist or is not supported. (Microsoft SQL Server Native Client 11.0)

这可能吗?我是否需要动态生成查询?

最佳答案

改用 ADO.net 提供程序连接到 Azure SQL 数据仓库。

根据here ,不完全支持 OLEDB,尽管您可能会发现可以连接,但不支持全套功能,包括参数化语句:

Successful package execution

要参数化该语句,请结合使用包级参数、SSIS 变量和表达式。在我的示例中,我使用了一个名为 dimDate 的包级参数,它是一个 Int32。然后,我使用名为 @[User::sql] 的 SSIS 变量来连接我要运行的存储过程和参数:

"EXEC dbo.usp_getDimDate "+ (DT_STR, 8, 1252) @[$Package::dimDate]

SSIS variable with expression

最后,使用任务的表达式部分将 SSIS 变量设为 ADO.net SqlCommand 的源:

ADO.net SqlCommand with expression

关于Azure SQL 数据仓库 - 参数化 SSIS 源查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43497087/

相关文章:

apache-spark - Azure Synapse Analytics 无法执行由 Apache Spark 上的 Databricks 连接器生成的 JDBC 查询

Azure API 管理 - 注册过程中的其他字段

c# - Azure Functions 的 Node.js 与 C# : How to choose regarding performance and integration

mysql - SSIS将英文BlobColumn转换为以汉字结尾的字符串

c# - SSIS Http Get请求Json反序列化

mysql - 在 MySQL 中验证日期

适用于个人的 Azure Synapse 计费模型?

azure - 如何从 Synapse 生成的输出文件中删除或替换 "\"(使用 copy stge)

python - 语言 worker 如何使用Python在Azure函数中工作?

azure - Azure DevOps NPM 注册表中生产/测试版的最佳实践