gpt4 book ai didi

sql-server - CSV 文件格式更改

转载 作者:行者123 更新时间:2023-12-02 10:37:13 24 4
gpt4 key购买 nike

我正在 SSIS 中使用平面文件数据提供程序从外部系统导入数据。 我对该文件没有任何控制权,它每周都会推送一次,然后我从一个公共(public)文件夹中选取它。

CSV 的前两列是日期。在文件的一部分中,日期格式已从日期更改为数字,如下所示:

Service_Date, Event_Datetime
2018-04-30,2018-04-30 21:18
43220,43220.92412

如您所见,格式从日期更改为数字。此处未显示的其他日期列也已更改。

显然,这破坏了数据流任务。

除了进入 Excel 并使用正确的列格式保存 CSV 之外,SSIS 中是否有任何方法可以即时转换,以便作业不会失败并需要手动干预?

最佳答案

这些数据值43220,43220.92412称为日期序列,您可以通过多种方式获取日期值:

(1) 使用派生列

您可以使用派生列将此列转换为 float ,然后转换为日期时间:

(DT_DATE)(DT_R8)[dateColumn]

引用文献

(2) 使用脚本组件

您可以使用DateTime.FromOADAte()函数,例如:(VB.NET中的代码)

If Row.ServiceDate_IsNull = False AndAlso String.IsnullOrEmpty(Row.ServiceDate) Then 

Dim dblTemp as Double

If Double.TryParse(Row.ServiceDatemdblTemp) Then

Row.OutputDate = DateTime.FromOADate(dblTemp)

Else

Row.OutputDate = Date.Parse(Row.ServiceDatemdblTemp)

End


End If

引用

关于sql-server - CSV 文件格式更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54817146/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com