映射平面文件日期和 sql 服务器日期查找编辑器

Mapping flat file dates and sql server dates lookup editor

我试图将许多平面文件属性导入大型数据库 table,但平面文件日期必须与 table 的日期相匹配。我正在使用 visual studio SSIS 执行此操作,因为有超过 500 个文件,我需要一种标准化的循环方式 them.The 平面文件具有超过 5 年的每日数据,而 table 只有大约 5数月的每日数据。过程图片如下:

两者都有正确的日期 format/type 但是,当我尝试使用查找转换编辑器的映射功能时,我发现数据库日期已转换为 database date [DT_DBDATE] 类型,而平面文件保持 date [DT_DATE] 类型。

有没有办法在查找工具中转换日期类型?如果有其他方法可以解决这个问题,我也愿意使用不同的 visual studio 工具。只要我只从平面文件中获取数据的子段。

解决方案

您可以通过添加派生列转换来解决此问题,该转换使用以下表达式添加类型为 DT_DBDATE 的新列

(DT_DBDATE)[Date]

或者您可以使用数据转换

附加信息

根据this link

  • DT_DBDATE(数据库日期): 由年月日组成的日期结构
  • DT_DATE(日期): 由年、月、日、时、分、秒、小数秒组成的日期结构.小数秒有一个固定的 7 位小数位。 DT_DATE数据类型使用8字节浮点数实现。天数以整数增量表示,从 1899 年 12 月 30 日开始,零时为午夜。小时值表示为数字小数部分的绝对值。但是,浮点值不能代表所有实数值;因此,可以在 DT_DATE. 中显示的日期范围是有限的 另一方面,DT_DBTIMESTAMP 由内部具有年、月、日、小时、分钟、秒和毫秒的单独字段的结构表示。此数据类型对其可以显示的日期范围有更大的限制。

并且根据 This Link,两种数据类型都存储为 Date 类型 SQL 服务器