我有一个excel文件,其中包含我需要推送到SQL Server数据库的联系人列表(大约10 k)。所以,我正在使用visual studio 2008编写一个.net windows程序来读取文件,为每个联系人生成随机密码,然后将这些信息输入我的SQL Server数据库。
2003年很容易处理excel文件,但现在我的计算机里面有Office 2007,事情似乎发生了变化。我正在挖掘Microsoft.Office.Interop.Excel,但它似乎比以前复杂得多。
答案 0 :(得分:2)
如果是一次性交易,您可以稍微格式化excel文件,将其导入并访问数据库,然后将其推回到您想要的任何数据库。
如果你必须在.net中这样做,你可以使用SQL通过ODBC打开一个excel文件...它有点脆弱,但我过去一直使用它。
在excel中使用类似这样的连接字符串:
Provider = Microsoft.Jet.OLEDB.4.0;数据源= C:\ MyExcel.xls;扩展属性=“Excel 8.0; HDR =是; IMEX = 1”;
工作表和命名部分是表名.HDR =是表示第一行包含字段的名称。我承认这有点奇怪。 :)
答案 1 :(得分:0)
我会采用ETL方法:
如果这是需要反复进行的事情,我会将包保存到SQL Server中,并从我的C#程序中调用它。
答案 2 :(得分:0)
我不确定这是否对您有所帮助,但也许SSIS(SQL Server Integration Services)会对您有所帮助。
除此之外,您可以尝试在Excel中执行所需的操作时在Excel中录制宏,当您完成操作后,您可以查看录制的宏(ALT + F8)并将其“翻译”到您的.NET代码。
只是一个建议。