将查询参数传递到SSIS

将查询参数传递到SSIS,ssis,Ssis,我有一个SSIS包,它使用SQL命令从视图中查询数据 SQL命令如下所示: SELECT from myView WHERE dateEntered >= GetDate() AND dateEntered < GetDate() + 1 现在,我希望能够指定开始和结束日期,以便查询的行为如下: SELECT from myView WHERE dateEntered >= startDate AND dateEntered < endDate 但是,如果没有提供开始

我有一个SSIS包,它使用SQL命令从视图中查询数据

SQL命令如下所示:

SELECT from myView WHERE dateEntered >= GetDate() AND dateEntered < GetDate() + 1
现在,我希望能够指定开始和结束日期,以便查询的行为如下:

SELECT from myView WHERE dateEntered >= startDate AND dateEntered < endDate
但是,如果没有提供开始和结束日期,我需要使用今天的日期和今天的日期+1

在SSIS包中执行此操作的最佳方法是什么


我无法更改视图,因此必须在视图之外或使用SSI中的变量进行更改。我对SSIS不太熟悉,也不确定工具箱中是否有什么东西可以让我处理日期变量,然后在SQL命令中使用它?

我最终使用/SET将参数传递给dtexec


然后我使用脚本任务来处理日期,以便处理无效或其他情况。

为什么不使用ISNULL检查日期?像

SELECT *
FROM myView 
WHERE dateEntered >= ISNULL(startDate,GETDATE()) 
    AND dateEntered < ISNULL(endDate,DATEADD(1,DAY,GETDATE()))
然后,您可以将开始日期和结束日期作为参数从SSIS传递给查询

SELECT *
FROM myView 
WHERE dateEntered >= ISNULL(?,GETDATE()) 
    AND dateEntered < ISNULL(?,DATEADD(1,DAY,GETDATE()))
您可以在执行SQL任务的参数部分指定这些参数