C#读取excel存入mysql源码
时间: 2023-07-12 15:39:06 浏览: 219
基于Python实现的excel导数据到mysql数据库小工具源码
以下是使用 C# 读取 Excel 并存入 MySQL 数据库的示例代码:
```csharp
using System;
using System.Data;
using System.Data.OleDb;
using MySql.Data.MySqlClient;
namespace ExcelToMysql
{
class Program
{
static void Main(string[] args)
{
string filePath = "C:\\data.xlsx"; // Excel 文件路径
string sheetName = "Sheet1"; // Excel 表格名称
string connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + filePath + ";Extended Properties='Excel 12.0;HDR=YES;IMEX=1'"; // Excel 连接字符串
string mysqlConnectionString = "Server=localhost;Database=test;Uid=root;Pwd=123456;"; // MySQL 连接字符串
// 读取 Excel 数据
using (OleDbConnection conn = new OleDbConnection(connectionString))
{
conn.Open();
OleDbDataAdapter adapter = new OleDbDataAdapter("SELECT * FROM [" + sheetName + "$]", conn);
DataSet ds = new DataSet();
adapter.Fill(ds);
conn.Close();
// 将 Excel 数据存入 MySQL 数据库
using (MySqlConnection mysqlConn = new MySqlConnection(mysqlConnectionString))
{
mysqlConn.Open();
foreach (DataRow row in ds.Tables[0].Rows)
{
MySqlCommand cmd = new MySqlCommand();
cmd.Connection = mysqlConn;
cmd.CommandText = "INSERT INTO table_name (column1, column2, column3) VALUES (@value1, @value2, @value3)";
cmd.Parameters.AddWithValue("@value1", row[0]);
cmd.Parameters.AddWithValue("@value2", row[1]);
cmd.Parameters.AddWithValue("@value3", row[2]);
cmd.ExecuteNonQuery();
}
mysqlConn.Close();
}
}
}
}
}
```
需要注意的是,读取 Excel 数据需要安装 Microsoft.ACE.OLEDB.12.0 数据库驱动程序,可以在 Microsoft 官网下载安装。同时,代码中的连接字符串、Excel 文件路径、表格名称、表格列名、MySQL 数据库表名和列名需要根据实际情况进行修改。
阅读全文