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 对象设置连接池中的一些配置选项,如 Pooling、MinimumPoolSize 和 MaximumPoolSize。接着,我们调用 Open() 方法打开连接,并使用 MySqlCommand 对象执行一个简单的查询操作。
在使用完这个连接后,我们应该及时地关闭它,以便将其释放回连接池中。需要注意的是,在使用 using 块语法时,即使代码块异常退出,也可以确保自动关闭和释放资源。
浙公网安备 33010602011771号