首页 >数据库 >mysql教程 >SSIS 如何处理隐式日期时间转换以及支持哪些格式?

SSIS 如何处理隐式日期时间转换以及支持哪些格式?

Patricia Arquette
Patricia Arquette原创
2024-12-20 09:26:14675浏览

How Does SSIS Handle Implicit Datetime Conversions and What Formats Are Supported?

日期时间的 SSIS 源格式隐式转换

简介

在 SSIS 中处理日期时,重要的是要考虑各种支持的不同格式数据类型。这是因为 SSIS 在遇到格式与预期类型不匹配的日期值时可能会执行隐式转换。

问题

一位用户遇到了一种情况,他们正在尝试将日期值转换为将“1-Jan”格式的日期转换为日期时间类型 (DT_DBTimestamp)。他们预计转换会失败,但 SSIS 却隐式将该值解释为“1/1/2017”。该用户正在寻求参考以显示不同 SSIS 数据类型支持的日期格式。

答案

SSIS 中日期时间数据类型的默认格式

从字符串转换时,SSIS 中日期时间数据类型的默认格式如下如下:

  • DT_DBDATE: yyyy-mm-dd
  • DT_FILETIME: yyyy-mm-dd hh:mm:ss:fff
  • DT_DBTIME: hh:mm: ss
  • DT_DBTIME2: hh:mm:ss[.fffffff]
  • DT_DBTIMESTAMP: yyyy-mm-dd hh:mm:ss[.fff]
  • DT_DBTIMESTAMP2: yyyy-mm-dd hh:mm:ss[ .fffffff]
  • DT_DBTIMESTAMPOFFSET: yyyy-mm-dd hh:mm:ss[.fffffff] [{ |-} hh:mm]

隐式转换实验

为了调查SSIS中的隐式转换行为,使用脚本组件作为数据源进行了实验。该脚本迭代各种区域性信息和日期时间格式,以确定 DT_DBTIMESTAMP 输出列接受哪些格式。结果保存到文本文件中,结果显示许多日期时间格式都是隐式转换的。

SQL Server 隐式转换

在 SQL Server 中,只有两种日期时间字符串格式无论语言如何,都能正确解释设置:

  • yyyyMMdd
  • yyyy-MM-ddTHH:mm:ss (ISO8601)

以上是SSIS 如何处理隐式日期时间转换以及支持哪些格式?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn