批量插入CSV到SQL Server 2012 - 以双引号排除少数逗号数据

时间:2013-12-14 17:43:43

标签: csv sql-server-2012 bulkinsert

我有一个很大的.CSV文件,我尝试使用批量插入将其导入SQL Server。一些记录正确插入,但其他记录由于以下原因而搞砸了。

    Create table Testing 
    (
     field1 varchar(10),
     field2 varchar(10),
     field3 varchar(10),
     field4 varchar(50),
     field5 varchar(10)
   )

档案数据

no,fname,lname,address,cellphone
1,john,demo,10th street,1234567890
2,smith,demo,park view,111111111
3,venus,demo,"POBOX,CA",222222222

代码:

BULK INSERT npidata
FROM 'C:\temp.csv'
WITH
(
   FIELDTERMINATOR = ',',
   ROWTERMINATOR = '\n'
)

前两个记录正确插入,第三个记录发出,因为超过4个逗号进入第三行。

请建议如何处理此案件。

提前致谢。

1 个答案:

答案 0 :(得分:0)

关于你的问题,从我在这方面的搜索,我相信语音标记""是进口的问题。

在导入数据库之前,您可能需要编写一个处理数据并删除语音标记或额外逗号的脚本。