Bonjour,
Dans mon appli, je boucle sur le résultat d'une requête, et en fonction de ces résultats je supprime d'autres lignes dans une autre table (voir le code ci dessous).
Le problème est que j'ai ce message d'erreur à la ligne du cmd.Delete() :
Je pense que c'est un problème de Using ? Mais je ne vois pas trop comment faire...System.InvalidOperationException
Un DataReader associé à cette Command est déjà ouvert. Il doit d'abord être fermé.
Est-ce que quelqu'un a une idée svp ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 using (SqlConnection s = new SqlConnection(connectionString)) { s.Open(); using (SqlCommand cmdSelect = new SqlCommand("SELECT nom_table FROM dbsync", s)) { cmdSelect.CommandType = CommandType.Text; using (SqlDataReader sqlDataReader = cmdSelect.ExecuteReader()) { while (sqlDataReader.Read()) { string nom_table = sqlDataReader.GetString(0); this.Synchro(nom_table); using (SqlCommand cmdDelete = new SqlCommand($"DELETE FROM dbsync WHERE nom_table = '{nom_table}'", s)) { cmdDelete.CommandType = CommandType.Text; cmdDelete.ExecuteNonQuery(); } } } } }
Partager