我正在尝试在我们的sql数据库中的一个表中进行批量上传。之前,当我们在不同的服务器上安装数据库时,此查询运行良好,但现在在新服务器上我收到错误。 这就是我的全部内容: sql批量导入查询:
BULK
INSERT NewProducts
FROM 'c:\newproducts.csv'
WITH
(
FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n'
)
GO
我得到的错误是:
Msg 4832, Level 16, State 1, Line 1
Bulk load: An unexpected end of file was encountered in the data file.
Msg 7399, Level 16, State 1, Line 1
The OLE DB provider "BULK" for linked server "(null)" reported an error. The provider did not give any information about the error.
Msg 7330, Level 16, State 2, Line 1
Cannot fetch a row from OLE DB provider "BULK" for linked server "(null)".
感谢您提前提供任何帮助。
答案 0 :(得分:0)
我以前遇到过这个问题,有几点需要注意:
\n
而不是\r\n
如果你做了所有这三个并且仍然收到错误,请告诉我。
答案 1 :(得分:0)
在我的情况下,我尝试访问的文件位于SQL Sever进程无权访问的目录中。我将平面文件移动到SQL有权访问的目录,并且此错误已解决。
答案 2 :(得分:0)
对于遇到此问题寻找答案的其他人,当CSV文件中的列数与您正在批量插入的表的列不匹配时,也会发生此错误。