Всички примери по-горе показват една и съща слабост. Не използвате изявлението за използване което ще осигури правилното затваряне и изхвърляне на връзката и други предмети за еднократна употреба. Ако едно или повече от вашите изрази предизвикат изключение, кодът, който затваря връзката, не се изпълнява и може да завършите с грешката за твърде много връзки
Например
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)