我将 SSIS 的日期存储到 oracle表格。
我正在使用执行SQL任务,
当我查看SSIS中的日期时,例如'01 -APR-2008'
但是当它存储在oracle数据库中时,它会将其存储为'08 -APR-01',因为你可以看到日期被反转,我无法控制这里的行为。
任何人都有想法,如果需要,我可以发布整个配置,
执行SQL任务有一个如下所示的查询:
"INSERT INTO Test.TimeTable (TIME_DIM_ID)
select '"+(DT_STR, 50,1252) @[User::ReadingDate] +"'
from dual"
其中@User :: ReadingDate是数据类型的变量 DateTime ,
它的值是(01-APR-08 9:38:27 PM)这只是默认值,变量由另一个任务填充,然后 EXECUTE SQL任务选择变量中的日期,但它们在存储点被反转。
答案 0 :(得分:2)
您能显示sql任务中使用的查询吗?
如果您知道进入数据库的日期格式,则应始终适当地对日期进行类型转换。 (我假设输入是以字符串形式出现的。)
所以代替'01 -APR-2008',使用to_date('01 -APR-2008','DD-MON-YYYY')(不要依赖会话的NLS参数)