我需要将数据表单.csv文件导入数据库表(MS SQL Server 2005)。 SQL BULK INSERT似乎是一个不错的选择,但问题是我的数据库服务器与我的WEB服务器不在同一个盒子上。 This question描述了同样的问题,但我无法控制我的数据库服务器,也无法共享任何文件夹。
我需要一种方法来以编程方式导入我的.csv(C#),任何想法?
编辑:这是网站的一部分,用户可以使用.csv内容填充表格,这种情况会每周发生一次,如果不是更频繁的话
答案 0 :(得分:5)
您有几种选择:
答案 1 :(得分:2)
尝试Rhino-ETL,它是一个用C#编写的开源ETL引擎,它甚至可以将BOO用于简单的ETL脚本,因此您无需一直编译它。
代码可以在这里找到: https://github.com/hibernating-rhinos/rhino-etl
写这篇文章的人: http://www.ayende.com/blog
小组列表有一些关于它的讨论,我实际上刚刚为boo脚本添加了批量插入。 http://groups.google.com/group/rhino-tools-dev http://groups.google.com/group/rhino-tools-dev/browse_thread/thread/2ecc765c1872df19/d640cd259ed493f1
如果您下载代码有几个示例,如果您需要更多帮助,请查看Google群组列表。
答案 2 :(得分:1)
我最终使用了CSV Reader。我在@Jon Skeet的一个答案中看到了对它的引用,再也找不到将它链接到它上面
答案 3 :(得分:0)
您的数据集有多大?除非它们非常大,否则您可以使用参数化插入语句。出于安心或性能原因,您可能需要先加载到临时表。