【发布时间】:2013-04-20 14:24:49
【问题描述】:
如何导入带有以下示例记录的逗号分隔文本文件: abc, def 和 ghi,jkl
这样我得到的输出为 第 1 列:abc、def 和 ghi 第2列:jkl
没有围绕(abc、def和ghi)的文本限定符,如果在sql server import中将逗号和空格(,)指定为文本限定符,则不会产生上述结果。
【问题讨论】:
标签: sql-server csv import delimiter qualifiers
如何导入带有以下示例记录的逗号分隔文本文件: abc, def 和 ghi,jkl
这样我得到的输出为 第 1 列:abc、def 和 ghi 第2列:jkl
没有围绕(abc、def和ghi)的文本限定符,如果在sql server import中将逗号和空格(,)指定为文本限定符,则不会产生上述结果。
【问题讨论】:
标签: sql-server csv import delimiter qualifiers
您可以尝试批量插入 MSDN: Bulk Insert
USE tempdb;
GO
IF OBJECT_ID('tempdb..#test') IS NOT NULL DROP TABLE #test;
CREATE TABLE #test
(
col1 VARCHAR(50)
,col2 VARCHAR(50)
)
BULK INSERT #test
From 'C:\Users\Brian\Desktop\test.csv'
WITH
(
FIRSTROW = 2
,FIELDTERMINATOR = '|'
,ROWTERMINATOR = '\n'
)
Select *
From #test
IF OBJECT_ID('tempdb..#test') IS NOT NULL DROP TABLE #test;
下面是我的 csv 文件的布局。是否可以使用管道分隔符或其他类型的分隔符,例如 ™...我最喜欢的 ;)
col1|col2
abc、def 和 ghi| jkl
以及导入的结果。
col1 col2
abc, def and ghi jkl
【讨论】:
, 不被视为分隔符,因此我不确定您的解决方案是否能开箱即用。