c#使用npoi将excel数据导入sql数据库
时间: 2024-12-18 11:16:38 浏览: 10
在C#中,你可以使用NPOI库来读取Excel文件中的数据,然后使用ADO.NET或者其他数据访问技术(如Entity Framework、Dapper等)将这些数据插入到SQL数据库。以下是简单的步骤:
1. **添加NPOI依赖**:首先,你需要在项目中安装NPOI库,对于.NET Core项目,可以使用NuGet包管理器安装`EPPlus`库,它是NPOI的一个简化版。
```sh
Install-Package EPPlus
```
2. **读取Excel文件**:
使用EPPlus库的`ExcelPackage`类打开Excel文件,并通过`Worksheet`对象获取数据。
```csharp
using OfficeOpenXml;
...
var package = new ExcelPackage(new FileInfo("example.xlsx"));
var worksheet = package.Workbook.Worksheets[0];
```
3. **遍历数据并插入SQL数据库**:
遍历工作表中的每一行,提取需要的数据,然后使用ADO.NET连接执行SQL命令(比如使用SqlCommand)将数据插入数据库。
```csharp
foreach (var row in worksheet.Cells)
{
string column1Value = row[1].Value.ToString(); // 假设第一列为列A,索引从1开始
int column2Value = Convert.ToInt32(row[2].Value);
using (SqlConnection connection = new SqlConnection(connectionString))
{
var command = new SqlCommand(
"INSERT INTO YourTableName (Column1, Column2) VALUES (@column1, @column2)", connection);
command.Parameters.AddWithValue("@column1", column1Value);
command.Parameters.AddWithValue("@column2", column2Value);
connection.Open();
command.ExecuteNonQuery();
}
}
```
4. **关闭资源**:
最后别忘了关闭数据库连接和Excel包装对象。
```csharp
connection.Close();
package.Dispose();
```
阅读全文