Bonjour,

Je développe une appli Windows en C# qui s'appuie sur une base de données SQLite. Par moment j'ai des problèmes d'exceptions qui m'indique la database is locked. En relisant mon code de multiple fois je ne vois pas d'où cela peut venir.
Voici mon code qui pose problème :

if (Reset)
{
con.Open();
command = new SQLiteCommand("delete from configuration;", con);
command.ExecuteNonQuery();
command = new SQLiteCommand("INSERT INTO configuration (nb_terrain,nb_joueur,simple,journee_en_cours,rde) values (" + C.NombreTerrain + "," + C.NombreJoueur + "," + Convert.ToInt32(C.TypeSimple) + "," + C.JourneeEnCours + "," + C.RDE + ")", con);
command.ExecuteNonQuery();

command = new SQLiteCommand("SELECT id_tournoi from configuration", con);
SQLiteDataReader dr = command.ExecuteReader();
if (dr.Read())
C.IdTournoi = Convert.ToInt32(dr["id_tournoi"]);
con.Close();
}
else
{
con.Open();
command = new SQLiteCommand("UPDATE configuration set nb_terrain=" + C.NombreTerrain + ",nb_joueur=" + C.NombreJoueur + ",simple=" + Convert.ToInt32(C.TypeSimple) + ",journee_en_cours=" + C.JourneeEnCours + ",rde=" + C.RDE + " where id_tournoi =" + C.IdTournoi, con);
command.ExecuteNonQuery();
con.Close();
}

sql = "INSERT INTO joueur_tournoi (id_joueur,id_tournoi) values('";
foreach (DataRow r in dtListeJoueurTournoi.Rows)
{
sql += r[0] + "','" + C.IdTournoi + "'),('";
}
sql = sql.Substring(0, sql.Length - 3);

con.Open();
command = new SQLiteCommand("delete from joueur_tournoi;", con);
command.ExecuteNonQuery();


L'Exception arrive à la dernière ligne au moment où je veux effacer cette table 'joueur_tournoi'

Une idée ?

Merci.