隐藏

c# mysql 帮助类

发布:2024/3/26 23:01:14作者:管理员 来源:本站 浏览次数:464

以下是一个简单的MySqlHelper类的示例代码,用于在C#中执行MySql数据库操作。


using System;

using System.Data;

using MySql.Data.MySqlClient;


public static class MySqlHelper

{

   // 连接字符串,需要根据实际情况配置

   private static readonly string connectionString = "server=localhost;user=root;database=mydb;port=3306;password=mypassword";


   // 执行无返回值的SQL语句

   public static void ExecuteNonQuery(string query)

   {

       using (MySqlConnection connection = new MySqlConnection(connectionString))

       {

           MySqlCommand command = new MySqlCommand(query, connection);

           connection.Open();

           command.ExecuteNonQuery();

       }

   }


   // 执行查询,返回DataTable

   public static DataTable ExecuteQuery(string query)

   {

       DataTable dataTable = new DataTable();

       using (MySqlConnection connection = new MySqlConnection(connectionString))

       {

           MySqlDataAdapter adapter = new MySqlDataAdapter(query, connection);

           connection.Open();

           adapter.Fill(dataTable);

       }

       return dataTable;

   }


   // 执行带参数的查询或命令

   public static DataTable ExecuteQuery(string query, MySqlParameter[] parameters)

   {

       DataTable dataTable = new DataTable();

       using (MySqlConnection connection = new MySqlConnection(connectionString))

       {

           using (MySqlCommand command = new MySqlCommand(query, connection))

           {

               command.Parameters.AddRange(parameters);

               MySqlDataAdapter adapter = new MySqlDataAdapter(command);

               connection.Open();

               adapter.Fill(dataTable);

           }

       }

       return dataTable;

   }


   // 执行事务

   public static void ExecuteTransaction(MySqlTransaction transaction, CommandType commandType, string commandText)

   {

       // 示例中省略了具体的事务实现,只展示了如何使用MySqlTransaction对象

       using (MySqlCommand cmd = new MySqlCommand(commandText, transaction.Connection))

       {

           cmd.CommandType = commandType;

           cmd.Transaction = transaction;

           cmd.ExecuteNonQuery();

       }

   }

}


这个MySqlHelper类提供了执行无返回值的SQL语句、返回DataTable的查询以及带参数的查询。同时,还展示了如何在类中使用连接字符串来配置数据库连接信息。这个类可以被其他数据访问层的代码重用,简化了数据库交互的代码并提高了代码的可维护性。