我是MS SQL Server 2014的初学者。需要一些从SSIS到SQL服务器的数据类型转换建议。
我正在使用DATE TIME字段,一个示例值:'01272016122044123',格式为'MMDDYYYYHHMMSSsss'
从SSIS我使用数据类型“数据库时间戳精度[DT_DBTIMESTAMP2]”,在SQL Server中我使用了数据类型“DateTime2(7)”。
当我尝试从SSIS导入数据时,它给出了错误“OLE DB记录可用。来源:”Microsoft SQL Server Native Client 11.0“Hresult:0x80004005描述:”日期格式无效“。
返回的列状态为:“转换失败,因为数据值溢出指定的类型。”。
需要知道我哪里出错?
由于 Syed Ayaz Mahmud
答案 0 :(得分:0)
SSIS对于将字符串转换为日期时间非常挑剔。我会在数据流中执行脚本任务:
在脚本中使用以下内容:
using System.Globalization;
public override void Input0_ProcessInputRow(Input0Buffer Row)
{
CultureInfo provider = CultureInfo.InvariantCulture;
Row.newDate = DateTime.ParseExact(Row.MyDate, "MMddyyyyhhmmssfff", provider);
}