2017-08-01 89 views
1

有没有办法将数据从Excel表导入到SQL Server数据库而不使用批量方法?请记住,我正在创建一个Web应用程序,用户将一个Excel文件上载到页面,然后继续将其导入到现有数据库中。有没有办法将excel表格中的数据导入到SQL Server数据库中?

批量方法适用于使用OleDbDataReader,除了它复制excel工作表并将其粘贴到数据库不考虑列名的兼容性。我错过了什么吗?

+1

SSIS - 是一条路可走。 – lad2025

+0

- 也请记住我正在使用C#和asp.net –

+2

您是否希望在编程上执行此操作,或者在SSMS中执行一次性负载?因为SSMS是Sql Server的GUI,而不是数据库本身。 – JNYRanger

回答

6

如果您是通过SSMS的工作,使用SQL导入导出向导。有足够的文档MSDN

从代码你可以使用SqlBulkCopy类导入到SQL数据库。如果您要将批量记录导入Oracle,则可以使用ODP.net OracleBulkCopy。目前仅通过完整的ODP.net提供程序支持Oracle批量复制。托管的ODP.net不支持批量操作。

要读取Excel文件,你可以使用任意数量的库。
LinqToExcel, OleDb, closedxml

+1

但我的意思是通过C#和asp.net,我想创建一个隐式执行此操作的Web应用程序..对不起,问题不明确,我编辑它。 –

+1

你的问题仍然说“在SQL Server Management Studio上”,并且导入向导是SSMS中的一个工具。 –

0

看看在DocumentFormat.OpenXml.Spreadsheet命名空间:MSDN Link

它可以让你看看电子表格的不同部分,因为它是存储在OpenXML的。

相关问题