我试图弄清楚为什么我正在使用的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' )
由于某种原因,我遇到了错误:
消息102,级别15,状态1,第6行 ‘FORMAT’附近的语法不正确。
加法 :FORMAT在SSMS中以粉红色文本FIELDQUOTE显示,在黑色文本中显示,其他以蓝色文本显示。出于某种原因,该命令似乎无法识别,FORMAT并且不能FIELDQUOTE作为关键字使用。
FORMAT
FIELDQUOTE
在FORMAT和FIELDQUOTE符是不幸的是没有在生产服务器尚未公布。
根据文档:
输入文件格式选项 FORMAT = 'CSV' 适用于: SQL Server vNext CTP 1.1。 指定符合RFC 4180标准的逗号分隔值文件。 FIELDQUOTE = 'field_quote' 适用于: SQL Server vNext CTP 1.1。
输入文件格式选项 FORMAT = 'CSV' 适用于: SQL Server vNext CTP 1.1。 指定符合RFC 4180标准的逗号分隔值文件。
FORMAT = 'CSV'
FIELDQUOTE = 'field_quote' 适用于: SQL Server vNext CTP 1.1。
FIELDQUOTE = 'field_quote'
注意 :截至2017年2月13日,此答案是最新的。在某些时候,“ SQL Server vNext”将不再是CTP,而成为生产服务器。但是,问题与SQL Server 2016有关,SQL Server 2016因此缺少这些功能。