繁体   English   中英

在 C#.NET 中将 Excel 导入数据库

[英]Import Excel to database in C#.NET

我有大量的 Excel 文件。 有很多隐私信息,我的客户想将其存储在数据库中。 之后他们可以使用数据库中的数据重建所有的 Excel 报表。 那么你有什么想法来实现这一目标吗? 如果我将 Excel 转换为字节流来存储怎么办?

我知道如果我将 Excel 放入字节流,将使用更多的时间和空间来处理类似的格式和其他事情,而这样做很愚蠢。 所以我想要其他方式来存储数据?

正如 Uriel_SVK 所说,Interop.Excel 应该很容易实现。 但是如果你只是想存储数据,也可以试试Oledb。

string myConnection ="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\test.xlsx;Extended Properties="Excel 12.0 ;HDR=YES";

    OleDbConnection conn = new OleDbConnection(connstr);

    string strSQL = "SELECT * FROM [Sheet$]"; 
    OleDbCommand cmd = new OleDbCommand(strSQL, conn);

    DataSet dataset = new DataSet();
    OleDbDataAdapter adapter = new OleDbDataAdapter(cmd);
    adapter.Fill(dataset); 

    GridViewXYZ.DataSource = dataset; 
    GridViewXYZ.DataBind();

您是否受限于使用 C#? 某些版本的 SQL Server 提供 DTS 或 SSIS 服务,用于将数据从各种源/目标(如 Excel 文件)移入和移出数据库。 Oracle 在 OWB 中有类似的东西。

您可以使用 Jet OleDB。

工作表将是表格,工作簿将是数据库。 您可以使用 SQl 查询生成您想要的数据并将其保存在数据表/数据集上

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM