溫馨提示×

C# 對mysql 操作的封裝

小億
217
2023-12-19 04:59:53
欄目: 云計算

在C#中,可以使用MySQL Connector/Net庫來操作MySQL數據庫。這個庫提供了與MySQL數據庫的交互功能,并且可以使用它來封裝對MySQL數據庫的操作。以下是一個簡單的示例:

using System;
using MySql.Data.MySqlClient;

namespace MySqlExample
{
    public class MySqlHelper
    {
        private string connectionString; // MySQL數據庫連接字符串
        
        public MySqlHelper(string server, string database, string username, string password)
        {
            // 構建連接字符串
            connectionString = $"server={server};database={database};uid={username};password={password}";
        }
        
        public void ExecuteNonQuery(string sql)
        {
            using (var connection = new MySqlConnection(connectionString))
            {
                connection.Open();
                
                var command = new MySqlCommand(sql, connection);
                command.ExecuteNonQuery();
            }
        }
        
        public object ExecuteScalar(string sql)
        {
            using (var connection = new MySqlConnection(connectionString))
            {
                connection.Open();
                
                var command = new MySqlCommand(sql, connection);
                return command.ExecuteScalar();
            }
        }
        
        public MySqlDataReader ExecuteReader(string sql)
        {
            var connection = new MySqlConnection(connectionString);
            connection.Open();
            
            var command = new MySqlCommand(sql, connection);
            return command.ExecuteReader(CommandBehavior.CloseConnection);
        }
    }
    
    public class Program
    {
        public static void Main(string[] args)
        {
            var helper = new MySqlHelper("localhost", "mydatabase", "myusername", "mypassword");
            
            // 執行查詢
            var reader = helper.ExecuteReader("SELECT * FROM mytable");
            while (reader.Read())
            {
                var column1 = reader.GetString(0);
                var column2 = reader.GetString(1);
                Console.WriteLine($"{column1}, {column2}");
            }
            
            // 執行更新
            helper.ExecuteNonQuery("UPDATE mytable SET column1 = 'newvalue' WHERE id = 1");
            
            // 執行插入,并獲取自動生成的ID
            var newId = (int)helper.ExecuteScalar("INSERT INTO mytable (column1, column2) VALUES ('value1', 'value2'); SELECT LAST_INSERT_ID();");
            Console.WriteLine($"New ID: {newId}");
        }
    }
}

在上面的示例中,我們創建了一個名為MySqlHelper的類,它封裝了對MySQL數據庫的常見操作,如執行查詢、執行更新和執行插入。在Main方法中,我們創建了一個MySqlHelper實例,并使用它來執行一些簡單的操作。

請注意,示例中的連接字符串是使用server、database、uidpassword參數構建的。你需要將這些參數替換為你自己的MySQL服務器的詳細信息。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女