Sql server 如何将变量传递给SSIS中ODBC源的sql查询?
我在SSIS的数据流任务中使用ODBC源代码。我只想从ODBC源中选择最新数据 我的问题是: 从ODBCTable中选择* 其中日期>=@[用户::日期1] 但我在解析查询时出错 另一种方法是什么?如何传递变量以及如何创建有效变量以传递只能提供当前最新日期数据的查询Sql server 如何将变量传递给SSIS中ODBC源的sql查询?,sql-server,ssis,Sql Server,Ssis,我在SSIS的数据流任务中使用ODBC源代码。我只想从ODBC源中选择最新数据 我的问题是: 从ODBCTable中选择* 其中日期>=@[用户::日期1] 但我在解析查询时出错 另一种方法是什么?如何传递变量以及如何创建有效变量以传递只能提供当前最新日期数据的查询 提前谢谢 您可以通过这种方式创建一个变量查询 然后使用参数在那里形成查询。 然后转到数据流属性,在表达式中选择ODBC source.sqlcoomand并在此处传递该变量 在第一次运行时,将使用expressionsql命令替
提前谢谢 您可以通过这种方式创建一个变量查询 然后使用参数在那里形成查询。 然后转到数据流属性,在表达式中选择ODBC source.sqlcoomand并在此处传递该变量 在第一次运行时,将使用expressionsql命令替换源查询。
谢谢在SQL命令文本中,首先声明变量,然后编写SQL语句:
declare @user_date1 date = cast(? as date)
Select * from ODBCTable where date >= @user_date1
然后单击Parameters按钮将SSIS参数值映射到sql变量。映射是按SQL命令中的出现顺序完成的,而不是按名称。我已经定义了变量,但如何使用?代替@[user::date1],如何映射这些。如果变量是define,那么使用
?
像where date>=?
一样,但我的变量名是date1,那么我如何将date1映射到?。在您定义变量的地方,该变量中有一个映射选项卡,用于映射变量和where子句变量,并在等号后面加问号。可能重复的