Pd d execution de plusieur requetes sql

Signaler
Messages postés
52
Date d'inscription
vendredi 25 juillet 2003
Statut
Membre
Dernière intervention
3 août 2004
-
Messages postés
56
Date d'inscription
lundi 7 juillet 2003
Statut
Membre
Dernière intervention
14 novembre 2007
-
lu,
mon probleme est le suivant lorsque je veux executer une deuxieme requete sql , il me renvoie tjrs une erreur de connection pourquoi je ne sais pas, poutant met deux requete sont bonne.

voila le code
public void execute(System.Data.OleDb.OleDbConnection conn)
{

//declaration des variable
int cpt = 0;
string customer_name;
string num_client;
string customer_pk;string lv_sql "SELECT * FROM societe WHERE ack_level_4 0 ORDER BY num_societe";
System.Data.OleDb.OleDbDataReader dreader;
System.Data.OleDb.OleDbDataReader dreader2;
OleDbCommand OleDbCommand2 new OleDbCommand("SELECT * FROM societe WHERE ack_level_4 0 ORDER BY num_societe", conn);

OleDbCommand OleDbCommand3 = new OleDbCommand("SELECT pli.fk_societe FROM pli" , conn);

OleDbCommand2.CommandType = CommandType.Text;
OleDbCommand3.CommandType = CommandType.Text;

dreader = OleDbCommand2.ExecuteReader();
while (dreader.Read())
{

//extraction des donnée
customer_name = dreader["nom"].ToString();

num_client = dreader["num_societe"].ToString();
customer_pk = dreader["pk_societe"].ToString();

dreader2 = OleDbCommand3.ExecuteReader();
while(dreader2.Read())
{}
dreader2.Close();

}
dreader.Close();

3 réponses

Messages postés
56
Date d'inscription
lundi 7 juillet 2003
Statut
Membre
Dernière intervention
14 novembre 2007

il ne peut y avoir qu'un reader ouvert en même temps par connection.
Je pense que dans ton cas il faudra utiliser des jointures avec INNER JOIN
Messages postés
52
Date d'inscription
vendredi 25 juillet 2003
Statut
Membre
Dernière intervention
3 août 2004

merci d avoir repondu c bien ce que je pensais ca va me compliquer la vie car j ai besoin de ma variable customer_pk pour savoir chez qu ellle client je doit recuperer les info n aurais tu pas une solution a me presenter car la je ne voie pas
Messages postés
56
Date d'inscription
lundi 7 juillet 2003
Statut
Membre
Dernière intervention
14 novembre 2007

voici un exemple :
SELECT p.pub_id, p.pub_name, p.state, a.* FROM publishers p INNER JOIN authors a ON p.city = a.city

cette requête permet d'obtenir des infos dans les deux tables authors et publishers ayant la même ville.
La clause where se met après, si besoin.