相关疑难解决方法(0)

批量插入SQL Server中正确引用的CSV文件

我正在尝试导入正确引用的CSV文件,这意味着只有在包含逗号的情况下才会引用数据,例如:

41, Terminator, Black
42, "Monsters, Inc.", Blue
Run Code Online (Sandbox Code Playgroud)

我观察到第一行正确导入,但第二行错误以建议引用的逗号被视为字段分隔符.

我见过这样的建议

从CSV导入SQL批量导入

更改字段终止符

FIELDTERMINATOR = ' ""'

但是,我的CSV文件仅引用需要它的字段,因此我不相信该建议会起作用.

SQL Server的BULK IMPORT语句可以导入正确引用的CSV文件吗?怎么样?

sql-server csv bulkinsert

49
推荐指数
5
解决办法
9万
查看次数

从CSV导入SQL批量导入

我需要将一个大型CSV文件导入SQL服务器.我正在使用这个:

BULK 
INSERT CSVTest
        FROM 'c:\csvfile.txt'
            WITH
    (
                FIELDTERMINATOR = ',',
                ROWTERMINATOR = '\n'
    )
GO
Run Code Online (Sandbox Code Playgroud)

问题是我的所有字段都被引号("")包围,所以一行实际上看起来像:

"1","","2","","sometimes with comma , inside", "" 
Run Code Online (Sandbox Code Playgroud)

我可以以某种方式批量导入它们并告诉SQL使用引号作为字段分隔符吗?

编辑:使用'","'作为分隔符的问题,如在建议的示例中那样:大多数示例的作用是,它们是否导入数据,包括第一个"在第一列和最后一个"在最后,然后他们继续把它剥离出来.我的第一个(也是最后一个)列是datetime,不允许将"20080902"导入为datetime.

从我一直在阅读的内容来看,我认为FORMATFILE是可行的方式,但文档(包括MSDN)非常缺乏帮助.

sql t-sql sql-server bulkinsert

23
推荐指数
3
解决办法
4万
查看次数

sql server批量插入带有逗号数据的csv

下面是csv的示例行

012,12/11/2013,"<555523051548>KRISHNA  KUMAR  ASHOKU,AR",<10-12-2013>,555523051548,12/11/2013,"13,012.55",
Run Code Online (Sandbox Code Playgroud)

你可以看到KRISHNA KUMAR ASHOKU,AR作为单场,但它因为逗号而将KRISHNA KUMAR ASHOKU和AR视为两个不同的领域,尽管它们附有"但仍然没有运气

我试过了

BULK
INSERT tbl
FROM 'd:\1.csv'
WITH
(
FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n',
FIRSTROW=2
)
GO
Run Code Online (Sandbox Code Playgroud)

它有什么解决方案吗?

sql sql-server csv bulkinsert

11
推荐指数
3
解决办法
3万
查看次数

标签 统计

bulkinsert ×3

sql-server ×3

csv ×2

sql ×2

t-sql ×1