Imbrication de datareader

zekisss Messages postés 10 Date d'inscription   Statut Membre Dernière intervention   -  
NookZ Messages postés 2138 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
comment puis-je imbriquer deux datareader de la sorte:
Dim reader1 As SqlDataReader = command.ExecuteReader()
Dim reader2 As SqlDataReader = command.ExecuteReader()

While reader1.Read()
While reader2.Read()

End While
End While


reader1.Close()
reader2.Close()

1 réponse

NookZ Messages postés 2138 Date d'inscription   Statut Membre Dernière intervention   514
 
Bonjour,


Est-ce que tu peux expliquer pourquoi tu veux faire ça ? j'arrive pas trop à voir là. Tu pourrais mettre un exemple de ce que retourne chaque dataReader ?
0
zekisss Messages postés 10 Date d'inscription   Statut Membre Dernière intervention  
 
Command.CommandText = "SELECT id_produit,sum(Qte_cmd) FROM Commande where date_cmd <= ' " & date_x &" ' group by id_produit"
Dim reader1 As SqlClient.SqlDataReader = command.ExecuteReader()
While reader1.Read()
Command.CommandText = "SELECT count(Qte_vendu) FROM vente where id_produit='" & reader1(0) & "'"
Dim reader2 As SqlClient.SqlDataReader = command.ExecuteScalar()
if reader2() then System.Console.WriteLine ( "Quantité disponible :" & reader1(1)-reader2(0)
reader2.close

End While
0
NookZ Messages postés 2138 Date d'inscription   Statut Membre Dernière intervention   514
 
Pour moi ça devrait marcher à partir du moment où tu crées bien deux sqlCommand distincts par contre tu dois faire deux choses en plus
avant While reader1.Read(), faut que tu fasses If reader1.HasRows() then
Et pour le reader deux, juste après Dim reader 2, faut faire
If reader2.HasRows() then
while reader2.Read()

end while
end if

Si ça marche pas, dis-moi l'erreur que tu as
0