Bonjour,
Sous VB.NET, je dois exécuter une deuxième commande à partir du résultat retourné par le datareader.
Cmd1 = MyConnexion.CreateCommand()
Cmd1.CommandText = "select * from t1"
myReaderCmd1 = Cmd1.ExecuteReader()
While myReaderCmd1.Read
Cmd2 = New SqlCommand("ps", MyConnexion)
Cmd2.CommandType = CommandType.StoredProcedure
Cmd2.Parameters("@p1").Value =
myReaderCmd1.GetString(0)
'j’ai d’autres parametre + un param output
Cmd2.ExecuteScalar()
'la ps(procédure stockée) retourne une valeur que je dois insérer dans une autre table + des informations retournées par le datareader. --- > donc j’ai créé une 3ème commande(d’insertion)
End while
Voila le message d’erreur qui s’affiche :
Un DataReader associé à cette commande est déjà ouvert. Il doit d'abord être fermé.
Cette erreur cconcerne cette ligne du programme :
Cmd2.ExecuteScalar()
Merci pour vos aides