SQL Server:为什么批量加载失败?

时间:2018-03-28 12:34:38

标签: sql sql-server

当我取消注释rownum行时出现以下错误,批量加载失败。我知道这个问题的解决方法。但我需要理解为什么它会显示错误信息。

  

Msg 4866,Level 16,State 1,Line 41
  批量加载失败。第1行第1列的数据文件中的列太长。验证是否正确指定了字段终止符和行终止符。

     

Msg 7399,Level 16,State 1,Line 41
  链接服务器“(null)”的OLE DB提供程序“BULK”报告错误。提供商没有提供有关错误的任何信息。

     

Msg 7330,Level 16,State 2,Line 41
  无法从OLE DB提供程序“BULK”获取链接服务器“(null)”。

的行

代码:

CREATE TABLE #TEMPFILE
(
    LINE VARCHAR(5000)
    ,rownum int identity(1,1) primary key
)

EXEC('BULK INSERT #TEMPFILE FROM '''+ @FILENAME + ''' WITH (ROWTERMINATOR = ''0x0a'', lastrow = 1)  ')

1 个答案:

答案 0 :(得分:1)

这是我在SQL Server中用于批量插入的语法

BULK
INSERT Table_Name
FROM FileName/FilePath
WITH
(
  FIRSTROW = 2,
  FIELDTERMINATOR = ',',
  ROWTERMINATOR = '\n'
)