我正在导入一个CSV格式的Excel文件。该文件有1,048,576行。到目前为止,我还没有能够用datetime数据类型导入文件,或者将带有日期的列转换为datetime数据类型。我只能将date列导入为nvarchar、varchar或sql variant。唯一可以转换该列的时间是文件是否在71000行以下。否则,我会得到一个错误,即从字符串进行的转换超出了范围或失败。(请看下面的图片和更多细节)
我试过以下几种方法
备注
如何导入CSV文件 右键单击数据库,单击“任务”并导入平面文件。
错误消息 试图通过表设计进行转换时的错误消息 将csv文件导入sql server时的错误消息
CSV文件的示例 显示大约10行的CSV文件示例
发布于 2021-04-05 23:08:43
Function SQLDate(d)
SQLDate = WorksheetFunction.Text(d, "yyyy-mm-dd hh:MM:ss")
End Function注:"d“指日期字段。
或者,可以将Excel数据转换为字符串:
TEXT(d,"dd mmmm yyyy hh:mm:ss")然后转换为req。来自SQL内部。关于这方面的进一步清晰度-见下面的截图。

引文:感谢H Javed
https://stackoverflow.com/questions/66960659
复制相似问题