我在Teradata上使用参数调用存储过程时遇到问题。我使用SSDT 2015和Teradata 15.10.1.10。该存储过程具有一个参数:in VALID_FROM varchar(10)
为了避免日期转换问题,我选择使输入变量的类型为varchar,然后在存储过程中进行转换cast(VALID_FROM as date)
并将其用于查询。
所以,我有两个阻止是SSIS: 1)“ GetInputParameter”(SQL执行任务)返回带日期的字符串。 2)“ ExecuteProcedureOnDest”(SQL执行任务),它通过ODBC驱动程序在Teradata上调用存储过程。
我检查了输入参数是否为格式为'YYYY-MM-DD'的字符串,因此在我看来,一切正常。但是,当我运行程序包时,在任务“ ExecuteProcedureOnDest”上看到错误:
[Teradata] [ODBC Teradata驱动程序] [Teradata数据库] SPINTORGLISTPREPARE:无效的日期。
我将非常感谢您为解决这个问题提供帮助!