如何在SSDT 2017中将变量传递给ODBC SQL命令?

时间:2019-02-04 15:58:08

标签: sql-server ssis odbc etl sqlcommand

我找不到将参数传递给ODBC源的选项?我可以看到很多与此相关的文章,但是在“数据流任务”表达式中找不到相同的选项。 [ODBC Source].[SqlCommand]不在“数据流”任务中。

Property expression

我在下面提到的文章:

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

我认为该属性丢失是由于 Visual Studio,SSDT和SQL Server版本之间不匹配。首先,您必须检查是否使用了适当的相关版本,可以查看以下链接以获取更多信息:

还尝试检查软件包目标服务器版本

类似问题链接


更新1

在搜索此问题时,我发现在2012年(2005年,2008年)之前的版本中可能找不到[ODBC Source].[SqlCommand]属性,但是我发现了一个提及解决方法的链接:

  

如果源是OLE DB源,则可以轻松放入参数,但是如果源是ODBC源,该怎么办?您必须使用DataReader源,并且不能像WHERE语句那样轻松设置参数。您必须使用表达式才能对动态WHERE语句进行查询或将变量作为WHERE语句过滤器传递。

     

因此,将DataFlow放在您的包上,然后在其中放入DataReader源,然后将连接设置为ODBC连接(ADO.NET连接)并设置命令文本。