Sql server 使用bcp和格式化文件处理日期时间
我正在使用bcp将平面文件导入SQLServer2005数据库 我遇到了datetime字段的问题 “我的格式文件”字段指定为:Sql server 使用bcp和格式化文件处理日期时间,sql-server,datetime,bcp,Sql Server,Datetime,Bcp,我正在使用bcp将平面文件导入SQLServer2005数据库 我遇到了datetime字段的问题 “我的格式文件”字段指定为: <COLUMN SOURCE="15" NAME="DATEOFSERVICE" xsi:type="SQLDATETIME"/> 我的数据文件的日期格式为: 19820101 然而,有些(许多)是用00000000填充的 由于类型不匹配,00000000日期无法正确导入 有没有办法指定我的格式文件来处理清零日期?或者如果遇到00000000,告诉b
<COLUMN SOURCE="15" NAME="DATEOFSERVICE" xsi:type="SQLDATETIME"/>
我的数据文件的日期格式为:
19820101
然而,有些(许多)是用00000000填充的
由于类型不匹配,00000000日期无法正确导入
有没有办法指定我的格式文件来处理清零日期?或者如果遇到00000000,告诉bcp输入默认值的方法?我建议您创建一个临时表,其中日期列被指定为varchar数据类型。然后,将数据BCP到temp表。将数据加载到temp表后,可以删除日期(例如,将00000000替换为NULL)。最后,验证数据后,将其复制到实际表中 这对于非常大的数据文件可能不太管用,但我也不确定您还可以如何做到这一点。在导入数据时,我会使用case语句来进行转换