我想澄清如何從.csv導入數據到帶有3列的表格中(請參閱下面的CR Ranking.csv)。我查詢:通過Openrowset和Microsoft從csv導入(到不同列中).ACE.OLEDB.12.0
select * FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0','Text;Database=C:\Work\;HDR=Yes;',
'SELECT * FROM [CR Ranking.csv]');
輸出結果爲一個 coulmn:
header: Category;INfo;Rank
row 1: Category 1;Info;1
row 2: Category 2;INfo2;2
row 3: Category 3;INfo3;3
是否有可能通過OPENROWSET從.CSV數據分成列? 我認爲我錯過了Openrowset params的一些東西,或許這很容易?
是的:我使用Office 2010的64位ODBC驅動程序獲取.csv,.txt等的驅動程序... 這就是爲什麼提供者是:'Microsoft.ACE.OLEDB.12.0',這就是爲什麼這個連接如字符串似乎不工作:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\';Extended Properties="text; HDR=NO; FMT=Delimited";
CR Ranking.csv:
Category;INfo;Rank
Category 1;Info;1
Category 2;INfo2;2
Category 3;Info3;3
UPD 1: 是否有可能做不格式文件?
UPD 2:我通過格式文件製作 - 這很容易。抱歉打擾了。
試圖將簡單的Jet csv連接字符串轉換爲ACE驅動程序。這是第一個從64位ACE訪問csv文件的實例,我瀏覽了大約75個不同的網頁後看到了這個文件。謝謝! 顯然,我的主要缺陷是在數據庫屬性周圍使用了雙引號(如果引用,則不起作用) – DarrenMB 2012-08-02 14:23:24
使用列定義創建schema.ini文件。這是一個鏈接http://msdn.microsoft.com/en-us/library/ms974559.aspx – 2013-05-13 23:11:26