我是SSIS的新手,无法将参数传递给OLE DB Source.我想查询给定日期范围的数据.
我有两个变量,数据类型为Date Time的variable1,变量的值由expression设置DATEADD("day", -1, GETDATE()).数据类型的变量2日期时间和变量的值由表达式设置DATEADD("day", 0, GETDATE())
在OLE DB SOURCE内部,数据访问模式设置为SQL命令,下面是SQL代码.
Select Col1, col2, col3, col4, coldate where Col1 = 'abc' and coldate between convert(varchar(10), ?, 101) and convert(varchar(10), ?, 101)
Run Code Online (Sandbox Code Playgroud)
我已将参数映射为
Parameter0,User :: variable1,输入
Parameter1,User :: variable2,输入
当我点击预览时,我收到一个错误
"显示预览时出错
附加信息:没有给出一个或多个必需参数的值.(Microsoft SQL Server Native Client 11.0)"
当我调试任务时,我得到的错误是
[OLE DB源[38]]错误:SSIS错误代码DTS_E_OLEDBERROR.发生OLE DB错误.错误代码:0x80040E21.OLE DB记录可用.来源:"Microsoft SQL Server Native Client 11.0"Hresult:0x80040E21描述:"转换规范的字符值无效".
注意:列冷却的数据类型是datetime
请帮我解决这个问题.我能够使用OLE DB Source中的变量使用数据访问模式SQL命令成功查询但我被要求不使用数据访问模式作为SQL命令.谢谢.