我正在编写一个脚本作为 SSIS 包的一部分,该包正在更新 SQL Server 数据库中的一些条目。有两列,比如说 A 和 B,都是类型datetime
,我设置DateTime.Now
为 A 列值和info.LastWriteTime
B 列值。
A 列更新正常,但是当它尝试更新 B 列时出现错误。我的理解是这两个语句都返回一个DateTime
对象,那么为什么会info.LastWriteTime
给出一个错误,而不是DateTime.Now
呢?
更新:
info
变量是从 中获得的DirectoryInfo info = new DirectoryInfo(path)
。
给出的实际错误如下:
[DirectoryHistoryTable [39]] 错误:SSIS 错误代码 DTS_E_OLEDBERROR。发生 OLE DB 错误。错误代码:0x80004005。OLE DB 记录可用。来源:“Microsoft SQL Server Native Client 10.0” Hresult:0x80004005 描述:“无效的日期格式”。
[DirectoryHistoryTable [39]] 错误:输入“OLE DB 目标输入”(52) 上的输入列“LastModifiedDate”(75) 存在错误。返回的列状态为:“转换失败,因为数据值溢出了指定类型。”。