2010-05-16 93 views
3

我想將帶有4,8M記錄的CSV導入到SQL 2008表中。我試圖用Management Studio嚮導來做到這一點,但它一直試圖識別CSV沒有的標題行。我沒有找到任何選項來跳過這一點,雖然我自己指定了列,但嚮導仍然會嘗試查找標題行,如果沒有它,將不會導入任何內容。將不帶標題的CSV文件導入SQL 2008

的CSV的結構是

「818180」, 「25529」, 「達里奧」, 「佩雷拉」, 「羅薩里奧」, 「SF」, 「2010-09-02」

我我也嘗試過像BULK INSERT這樣的替代品,但後來我發現使用BULK INSERT我不能導入帶有文本限定符的文件。

+0

不知道這是如何與編程有關... – 2010-05-16 14:37:28

回答

5

爲一次性進口肯定是在SQL Server Management Studio中的「導入數據」功能的最簡單方法。這將啓動一個嚮導,並允許您定義要從哪裏導入數據 - 選擇「平面文件源」。下一個對話框允許您瀏覽要導入的文件,並且您可以在該對話框中指定所有類型的東西(如文件的編碼,文本限定符是什麼 - 如果有的話等等)。

您也可以選擇跳過任意數量的行(例如,「跳過第5行」),也可以選擇第一行有列名。

alt text http://i39.tinypic.com/cj6ep.png

如果你的文件沒有第一行的列名稱,取消選中該選項。

如果您需要一遍又一遍地執行此導入操作,則可以將有關導入的所有信息保存爲SQL Server中的Integration Services包(或外部SSIS文件),然後可以一次又一次地從SQL Server代理「作業」菜單(如果您尚未啓用SQL Server代理,並找到「作業」子項目 - 您應該看到您的所有作業,然後可以從該菜單重新啓動它們)。

如果您願意,也可以從您的C#或VB.NET代碼啓動這些SSIS包 - 請查看此CodeProject article或查看Michael Entin's blog post的主題。