SSIS - 日期格式的脚本组件 - VB.NET/C#

时间:2012-09-13 23:11:43

标签: c# sql vb.net ssis

所以我有一种情况(通过SSIS)我基本上对我的数据库运行SELECT,然后将结果导出到.txt flatfile。

SSIS流程如下:OLEDB SOURCE(我的选择查询) - >数据转换(将所有值更改为DT_WSTR) - >平面文件目的地

但是,有人告诉我,我需要将yyyy-mm-dd hh:nn:ss(数据库中的内容)格式导出的所有日期时间列值的格式更改为mm/dd/yyyy hh:nn:ss AM/PM

从我对这个主题的搜索,我相信我的数据转换和平面文件目标之间的脚本组件是我在SSIS中所需要的......但我没有任何VB.NET或C#技能。尽管搜索,我还没有真正理解我如何编码这个日期格式转换。

帮助?

1 个答案:

答案 0 :(得分:2)

您可以在SELECT语句中进行转换。

这将让你闭幕:

SELECT CONVERT(VARCHAR(20),GetDate(),101) + ' ' 
+ LTRIM(RIGHT(CONVERT(VARCHAR(26),GetDate(),9),14))

只需将GetDate()替换为您的日期字段即可。如果你需要它没有纳秒,它会更长一点:

SELECT CONVERT(VARCHAR(20),GetDate(),101) + ' ' 
+ LTRIM(LEFT(RIGHT(CONVERT(VARCHAR(26),GetDate(),9),14),8)) + ' ' 
+ RIGHT(CONVERT(VARCHAR(26),GetDate(),9),2)