c#excel上传mysql
时间: 2023-07-05 18:08:46 浏览: 136
C#工业电脑检验数据自动上传数据库
将Excel文件导入到MySQL数据库有几种方法,其中一种是使用C#编写的程序来实现。
以下是一个简单的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 excelFilePath = @"C:\path\to\excel\file.xlsx";
string connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + excelFilePath + ";Extended Properties=\"Excel 12.0;HDR=YES;IMEX=1;\"";
OleDbConnection connection = new OleDbConnection(connectionString);
connection.Open();
DataTable dataTable = connection.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);
string sheetName = dataTable.Rows[0]["TABLE_NAME"].ToString();
string query = "SELECT * FROM [" + sheetName + "]";
OleDbDataAdapter dataAdapter = new OleDbDataAdapter(query, connection);
DataSet dataSet = new DataSet();
dataAdapter.Fill(dataSet);
connection.Close();
string mysqlConnectionString = "server=localhost;user id=root;password=123456;database=mydatabase";
MySqlConnection mysqlConnection = new MySqlConnection(mysqlConnectionString);
mysqlConnection.Open();
foreach (DataRow row in dataSet.Tables[0].Rows)
{
MySqlCommand command = new MySqlCommand("INSERT INTO mytable (column1, column2, column3) VALUES (@column1, @column2, @column3)", mysqlConnection);
command.Parameters.AddWithValue("@column1", row["Column1"].ToString());
command.Parameters.AddWithValue("@column2", row["Column2"].ToString());
command.Parameters.AddWithValue("@column3", row["Column3"].ToString());
command.ExecuteNonQuery();
}
mysqlConnection.Close();
Console.WriteLine("Data uploaded successfully");
Console.ReadLine();
}
}
}
```
此程序包括以下步骤:
1. 首先,创建一个OleDbConnection对象,并使用连接字符串打开Excel文件。
2. 获取Excel文件中的表格名称。
3. 创建一个OleDbDataAdapter对象,并使用查询语句从Excel文件中检索数据。
4. 将数据存储在DataSet对象中。
5. 创建一个MySqlConnection对象,并使用连接字符串打开MySQL数据库。
6. 使用foreach循环遍历DataSet中的所有行,并将每一行插入到MySQL数据库中。
7. 最后关闭MySQL连接,并输出上传成功的消息。
请注意,此示例程序仅适用于仅包含一个工作表的Excel文件。如果Excel文件包含多个工作表,则需要修改代码以选择正确的工作表。
阅读全文