Mysql
 sql >> Database >  >> RDS >> Mysql

C# Troppe connessioni in MySQL

Tutti gli esempi sopra mostrano la stessa debolezza. Non utilizzi la using che garantirà la corretta chiusura e smaltimento della connessione e degli altri oggetti usa e getta. Se una o più delle tue istruzioni generano un'eccezione, il codice che chiude la connessione non viene eseguito e potresti finire con l'errore di troppe connessioni

Ad esempio

string commandLine = "SELECT * FROM Table WHERE active=1";
commandLine = commandLine.Remove(commandLine.Length - 3);
using(MySqlConnection connect = new MySqlConnection(connectionStringMySql))
using(MySqlCommand cmd = new MySqlCommand(commandLine, connect))
{
    connect.Open();
    using(MySqlDataReader msdr = cmd.ExecuteReader())
    {
        while (msdr.Read())
        {
            //Read data
        }
    }
} // Here the connection will be closed and disposed.  (and the command also)