我有一个SSIS包,它将一些数据从Oracle传输到SQL Server。CAST vs ssis数据流隐式转换差异
在Oracle中,日期以浮点形式存储,例如, 42824 == '2017-04-01'
- 使用数据库的应用程序使用Delphi编写。
虽然select CAST(42824 as datetime)
在Management Studio导致'2017-04-01 00:00:00.000'
,由包在SQL Server表插入到日期时间列相同的值(42824)表示2017-03-30 00:00:00.000
。
注:此号,源数据类型为DT_R8
,在数据转换成分变更类型DT_UI4
改变不了什么
任何人都可以解释一下吗?
谢谢您的答复时,有没有必要。减去2天。我知道它的区别,事实上我在我的Oracle查询中写了 - 2。问题是我最终得到了-4!不知怎的,它看起来像集成服务“知道”这应该像日期和减另一个2.正如我写的,如果我从管理工作室和SSIS包中明确插入相同的(整数)值到datetime中,我会得到两个不同的日期。 –
avb
在ssis中,如何将整数转换为date? – Hadi
明确地说,我不是。我只是将odbc源中的整数列映射到数据流任务中的oledb目标中的datetime列。源SSIS数据类型是DT_R8。 – avb