在执行 Sql 任务的参数中分配多个值 --SSIS
Assigning multiple values in a parameter of Execute Sql task --SSIS
我正在创建一个 SSIS
包,它使用 Execute sql task
和 Script task.
这个包根据参数显示 table 内容。
我在 execute-sql 任务中给出了以下查询
Select * from Production.Product Where ProductID in ( 316,324)
我需要将值 316, 324
分配给 parameter
并填充结果集。如何在 parameter variable
中分配多个值?请帮忙
DECLARE @String nvarchar(Max),@ProductID varchar(25)
SET @productID ='316,324'
SET @String=''
SET @String='Select * from Production.Product Where ProductID in ( '+@productID+') '
Print @String
EXECUTE (@String)
如果您的 CSV 列表中的值少于 2000 个 - 您可以创建一个值为 316, 324
的字符串变量 Params 和另一个具有以下表达式的字符串变量 SQL_Select:
"Select * from Production.Product Where ProductID in ("+@[User::Params]+")"
在您的 Execute Task select 变量中作为查询源并将 User::SQL_Select 定义为源。表达式将在您访问它时进行评估,并将产生 select 语句。
我正在创建一个 SSIS
包,它使用 Execute sql task
和 Script task.
这个包根据参数显示 table 内容。
我在 execute-sql 任务中给出了以下查询
Select * from Production.Product Where ProductID in ( 316,324)
我需要将值 316, 324
分配给 parameter
并填充结果集。如何在 parameter variable
中分配多个值?请帮忙
DECLARE @String nvarchar(Max),@ProductID varchar(25)
SET @productID ='316,324'
SET @String=''
SET @String='Select * from Production.Product Where ProductID in ( '+@productID+') '
Print @String
EXECUTE (@String)
如果您的 CSV 列表中的值少于 2000 个 - 您可以创建一个值为 316, 324
的字符串变量 Params 和另一个具有以下表达式的字符串变量 SQL_Select:
"Select * from Production.Product Where ProductID in ("+@[User::Params]+")"
在您的 Execute Task select 变量中作为查询源并将 User::SQL_Select 定义为源。表达式将在您访问它时进行评估,并将产生 select 语句。