我在 Informatica 映射中使用存储过程作为源,并且在源限定符中将 SQL 查询定义为
exec dbo.GET_ATTRIBUTES($$fromDate, $$toDate)
where$$fromDate
和$$toDate
are 我在参数文件中定义的映射参数。我已经尝试了许多不同的方法来解决这个问题,但似乎都没有奏效,因为 SQL 查询无法验证。
所以,我的问题归结为这个,有没有办法在传入两个映射参数的同时调用存储过程?
提前致谢
我在 Informatica 映射中使用存储过程作为源,并且在源限定符中将 SQL 查询定义为
exec dbo.GET_ATTRIBUTES($$fromDate, $$toDate)
where$$fromDate
和$$toDate
are 我在参数文件中定义的映射参数。我已经尝试了许多不同的方法来解决这个问题,但似乎都没有奏效,因为 SQL 查询无法验证。
所以,我的问题归结为这个,有没有办法在传入两个映射参数的同时调用存储过程?
提前致谢
我实际上弄清楚了我的问题是什么。事实证明,当我定义映射参数时,我已将IsExprVar
字段设置为TRUE
. 当我将其设置为时,FALSE
我能够在源限定符的 SQL 查询字段中调用存储过程时将参数传递给存储过程。
我遇到了完全相反的问题。
从映射执行 t-sql 存储过程时,它接受 hh:mi:ss 中的时间,使用 IsExprVar 设置为 FALSE 的参数,失败并出现错误“[Informatica][ODBC SQL Server Wire Protocol driver][Microsoft SQL服务器]从字符串转换日期和/或时间时转换失败。]"
将相同的参数IsExprVar更改为TRUE后,从映射执行t-sql存储过程成功完成。