C#中通過連接池連接mysql數據庫

      使用連接池可以提高C#程序連接MySQL數據庫的性能,使得不必每次建立新的物理連接。

 

using System.Data;
using MySql.Data.MySqlClient;

namespace ConsoleApp1
{
    class Program
    {
        private const int MAX_POOL_SIZE = 100; // 設置最大連接數

        static void Main(string[] args)
        {
            string connectionString = "Server=myServerAddress;Port=3306;Database=myDataBase;Uid=myUsername;Pwd=myPassword;";
            using (MySqlConnection connection = new MySqlConnection(connectionString))
            {
                // 配置連接池和相關屬性
                var builder = new MySqlConnectionStringBuilder(connectionString);
                builder.Pooling = true;
                builder.MinimumPoolSize = 5;
                builder.MaximumPoolSize = MAX_POOL_SIZE;
                connection.ConnectionString = builder.ConnectionString;

                // 打開連接並執行操作
                connection.Open();
                using (MySqlCommand command = new MySqlCommand("SELECT * FROM my_table", connection))
                {
                    using (var reader = command.ExecuteReader())
                    {
                        while (reader.Read())
                        {
                            // 處理查詢結果
                        }
                    }
                }
            }
        }
    }
}

  

       在這個代碼段中,我們首先創建一個 string 類型的 connectionString 變量,它包含連接字符串信息。然後,我們將這個變量傳遞給一個新創建的 MySqlConnection 對象,該對象表示數據庫連接。

接下來,我們使用 MySqlConnectionStringBuilder 對象設置連接池中的一些配置選項,如 PoolingMinimumPoolSizeMaximumPoolSize。接着,我們調用 Open() 方法打開連接,並使用 MySqlCommand 對象執行一個簡單的查詢操作。

      在使用完這個連接後,我們應該及時地關閉它,以便將其釋放回連接池中。需要注意的是,在使用 using 塊語法時,即使代碼塊異常退出,也可以確保自動關閉和釋放資源。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章