【发布时间】:2020-11-24 05:16:55
【问题描述】:
我尝试使用 ssms 导入向导将一些大型 CSV 文件导入到 SQL Server 表中。其中一列是格式为 yyyy-mm-dd hh:MM:ss:xxx 的日期列。我已经尝试了提供给我的源字段中的每种日期格式,但它充其量只会给我整个日期,毫秒为 .000,而不是 .txt CSV 文件中的值。
我唯一能想到的是输入日期在冒号 (:) 之后的毫秒数,而不是句点 (.)。我可以编写一个程序将冒号转换为句点然后加载它,但我确实编辑了文件并将前六行更改为句点,但这似乎没有任何效果。
对于我使用“平面文件源”的导入,在“高级”下,我为列选择“数据类型”,并使用以下每一项作为数据类型。
数据库日期[DT_DBDATE],数据库时间[DT_DBTIME],数据库时间精度[DT_DBTIME2],
数据库时间戳 [DT_DBTIMESTAMP],精确的数据库时间戳 [DT_DBTIMESTAMP2],
DT_DBTIMESTAMPOFFSET] 偶数日期[DT_DATE],十进制[DT_DECIMAL],文件时间戳[DT_FILETIME]
目标是到 SQL Server Native Client 11.0 到目标 datetime2 的类型,在表上定义为 datetime2(7),而不是 null。
通过所有这些尝试,我要么得到“数据将被截断”错误,要么加载时毫秒设置为 000,而不是 CSV 文件中的值。
我将不胜感激。
谢谢,
鲍勃
【问题讨论】:
标签: ssms