2013-04-20 106 views
0

如何導入逗號分隔文本文件,下面的例子中記錄: ABC,DEF和GHI,JKL導入逗號

這樣我得到的輸出 列1:ABC,DEF和ghi column2:jkl

圍繞(abc,def和ghi)沒有文本限定符,並且如果逗號和空格(,)在sql server導入中被指定爲文本限定符,則不會生成上述結果。

回答

0

你可以嘗試批量插入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 
+0

請注意,OP需要','嵌入在field1內部不被視爲分隔符,所以我不確定你的解決方案是開箱即用。 – iruvar 2013-04-20 17:18:33