【问题标题】:How to do format expression in ssis expression language如何在ssis表达式语言中进行格式表达
【发布时间】:2013-11-04 16:12:33
【问题描述】:

在 sql 中我们有类似的数据类型格式

CONVERT(VARCHAR(5), CONVERT(DATETIME, [ReferralDate], 0), 108)

有没有什么方法可以使用 ssis 表达式语言来达到同样的效果?

是的,我们可以使用类似于

的表达式转换为字符串或任何其他所需的数据类型
(DT_STR, 10,1252)dob

但我的问题是如何通过传递诸如108(如上面的sql)或123/106等数字值来获得所需的格式

【问题讨论】:

    标签: sql-server ssis sqldatatypes dts


    【解决方案1】:

    表达式语言中没有用于区域设置格式的类比。您需要使用脚本任务或组件来应用格式。 Custom Date and Time Format Strings

    也就是说,您的第一个示例似乎是从hh:mm 格式的日期中提取小时和分钟,而我假设另一个示例将使用您的语言环境指定的任何内容转换字符串中的日期。

    停止在字符串数据类型中存储日期和时间!

    日期、日期时间、时间等数据类型将值存储在本地不可知的机制中。这意味着您不必担心字符串值“01-02-05”是“Feb 1 2005”-> en-GB、“Jan 2 2005”-> en-US 还是“Feb 5 2001” -> ja-JP。相反,这些是表示概念,在您的数据库中没有任何业务。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-28
      • 2011-05-30
      • 2019-06-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多