有没有办法快速将.csv或制表符.txt中的数据导入SQL Compact Edition 3.5表?
我有大量数据对手动输入不切实际。
我知道如果我想导入基于服务器的SQL数据库,我可以使用BULK INSERT函数,但此方法在SQL CE中不起作用。
我使用visual studio 2010,我安装了SQL Server Management Studio。
任何帮助将不胜感激!
答案 0 :(得分:5)
您可以使用我的VS加载项,该加载项根据CSV文件生成INSERT语句:http://sqlcetoolbox.codeplex.com
答案 1 :(得分:2)
也许更简单更好。没有什么比你自己的代码更容易,可以很容易地扩展。如果你愿意,你甚至可以动态地构建表,但可能没有必要。
var stuff = from l in File.ReadLines(filename)
let x = l.Split(new [] {',', ' '}, StringSplitOptions.RemoveEmptyEntries)
.Skip(1)
.Select(s => int.Parse(s))
select new
{
Sum = x.Sum(),
Average = x.Average()
};
答案 2 :(得分:1)
如果您有Microsoft Access,则可以将.csv或分隔的.txt数据导入为新表,然后升迁到SQL数据库。您还可以创建链接表并复制粘贴数据(例如从Microsoft Excel),它往往是高效可靠的(将错误放入您可以查看的单独表中)。
答案 3 :(得分:1)
没有直接的方法,您必须读取文件中的每一行并逐个插入SQLCE。之前有一些帖子,人们使用C#程序将文件读取到DataTable。如果您了解C#,则设置和运行起来相当简单。
Bulk insert from DataTable to SQLCE DataSource
http://ruudvanderlinden.com/2010/10/13/bulk-insert-into-sql-ce-in-c/
哎呀刚注意到c#是你问题中的一个标签:D
答案 4 :(得分:1)
我在处理csv时选择的工具是PowerShell,因为它内置了一个import-csv命令。它是这种东西的绝佳粘合剂。
这是开发人员导入csv并将其转换为插入脚本的链接。 http://allen-mack.blogspot.com/2008/02/powershell-convert-csv-to-sql-insert.html
从链接运行脚本(注意:powershell为您提供了标签完成功能,因此您可以在键入时使用它来帮助处理文件路径):
最后,由于您可以在powershell中实例化.net对象,因此您可以更改脚本并执行许多操作,例如将数据直接插入数据库。