BULK INSERT格式附近的语法不正确?

时间:2017-02-13 14:58:12

标签: sql sql-server sql-server-2016

我试图弄清楚为什么我使用的BULK INSERT命令并不识别命令中使用的FORMAT和FIELDQUOTE选项。

BULK INSERT dbo.tblM2016_RAW_Current_Import_File
FROM '\\x\tms\SCADA.dat'
WITH
(
    FIRSTROW = 1,
    FORMAT = 'CSV',
    FIELDQUOTE = '"',
    FIELDTERMINATOR = '\t',
    ROWTERMINATOR = '\n'
)

出于某种原因,我收到错误:

  

Msg 102,Level 15,State 1,Line 6
  ' FORMAT'附近的语法不正确。

添加FORMAT在SSMS中以粉红色文字显示,FIELDQUOTE以黑色文字显示,其他以蓝色文字显示。由于某种原因,该命令似乎没有将FORMATFIELDQUOTE识别为关键字。

1 个答案:

答案 0 :(得分:15)

遗憾的是,FORMATFIELDQUOTE说明符尚未在生产服务器中提供。

根据the documentation

  

输入文件格式选项
  FORMAT = 'CSV'
  适用于: SQL Server vNext CTP 1.1   指定符合RFC 4180标准的逗号分隔值文件。

     

FIELDQUOTE = 'field_quote'
  适用于: SQL Server vNext CTP 1.1。

注意:此答案截至2017年2月13日是最新的。在某些时候" SQL Server vNext"将不再是CTP并成为生产服务器。然而,问题与SQL Server 2016有关,因此缺乏这些功能。