【问题标题】:Import comma delimted with comma space qualifier导入用逗号空格限定符分隔的逗号
【发布时间】: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


    【解决方案1】:

    您可以尝试批量插入 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
    

    【讨论】:

    • 请注意,OP 需要嵌入在 field1 中的 , 不被视为分隔符,因此我不确定您的解决方案是否能开箱即用。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-04
    • 2016-05-28
    • 2019-08-19
    • 2017-06-13
    相关资源
    最近更新 更多