我收到了很多我需要批量插入SQL表的.csv文件。
在csv文件中,日期格式为YYYY-MM-DD,时间为单独的列,格式为HH:MM:SS。
"2016-11-24";"01:00:16"
在我的表中,我创建了两列作为日期数据类型和时间数据类型,并使用这段代码插入:
BULK
INSERT [dbo].[table_name]
FROM 'filepath'
WITH
(
FIRSTROW = 2,
FIELDTERMINATOR = ';',
ROWTERMINATOR = '\n'
)
但是我收到了这个错误:
Msg 4864, Level 16, State 1, Line 37
Bulk load data conversion error (type mismatch or invalid character for the specified codepage) for row 2, column 1 (date).
如果我使用普通插入语句,它可以工作......
答案 0 :(得分:0)
首先检查您的物理表日期和时间列数据类型。它具有日期时间格式,这意味着首先将所有.csv文件数据移动到具有name
数据类型的临时表。插入临时表后,使用日期时间转换移动到物理表。