2011-12-04 72 views
3

您是否可以在新手友好的層面上解釋如何將數據從CSV文件批量導入到Microsoft SQL Server Compact Edition中的表中?我仍然處於爲MS SQL Server CE後端數據庫創建C#前端的階段。這是在Visual Studio 2010中使用MS SQL Server CE 3.5(如果它很重要,則爲Ultimate Edition)。爲了方便起見,我可能更願意通過GUI數據庫設計器來完成它,但如果需要的話,我會歡迎SQL命令。這將作爲開發者完成一次,它不需要由最終用戶使用。將CSV數據批量導入Microsoft SQL Server精簡版表?

我已經做了谷歌搜索和Stackoverflow搜索,但仍然沒有成功在我想做什麼。

回答

0

一旦我需要執行批量數據導入到SQL compact,我使用LINQPad工具。您可以輕鬆地制定您的查詢在LINQ,你可以很容易地通過大塊使用File.ReadAllLines()String.Split(chardelimiters, StringSplitOptions)Convert.ToInt32()/.ToDouble()你的數據從CSV文件等

+0

僅對CSV數據使用拆分不僅僅是簡單。怎麼樣字符串內的分隔符等你真的需要一個CSV庫或一些很酷的正則表達式來解析CSV。 – ProfK

+0

@ProfK問題是關於批量導入到SQL,而不是關於CSV解析。幸運的是,LinqPAD支持NuGET包,並且可以使用一些包進行數據處理以讀取複雜的CSV ... –

+0

除非數據被正確解析,否則批量導入到SQL是毫無用處的。但是,自從我開始關注'TextFieldParser',它隱藏在'VisualBasic'命名空間中,並且它可以高度配置用於微調CSV解析。 – ProfK

5

你可以使用我的SQL Server Compact工具箱VS插件導入(生成的INSERT語句)將CSV文件轉換爲SQL Server Compact表格 - http://sqlcetoolbox.codeplex.com

+0

+1強烈推薦 - 優秀的東西,Erik!感謝與世界分享! –

+1

謝謝,我將很快發佈CSV導入的命令行版本,以允許導入更大的CSV文件以在沒有OOM錯誤的情況下工作 – ErikEJ

+1

CSV項目現已發佈在http://csv2sqlce.codeplex.com(僅限源代碼) – ErikEJ