Changer de commandtext ....

Résolu
engelho Messages postés 115 Date d'inscription mercredi 26 mai 2004 Statut Membre Dernière intervention 2 août 2005 - 27 juin 2005 à 16:15
Arthenius Messages postés 1182 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 6 septembre 2011 - 27 juin 2005 à 16:53
Bonjour,

Je cherche un truc tout bête....

Je veux changer le contenu du commandText d'un odbcCommand en court de route.... qu'est-ce que je dois faire?

je vous montre :

j'exécute une première requête, et lorsque j'ai initialisé mon reader je fais :


string reqMaj;


MajCmd.Connection.Open();



while(mainReader.Read())


{



if(QuestionExist(op_id,
int.Parse(mainReader["sl_id"].ToString())))


{


reqMaj="insert into affiche (af_sl_nom,af_images,af_parametres,af_sl_id,af_page,af_texte,af_op_id,af_selectionne) values (?,?,?,?,?,?,?,1)";


}



else


{


reqMaj="insert into affiche (af_sl_nom,af_images,af_parametres,af_sl_id,af_page,af_texte,af_op_id) values (?,?,?,?,?,?,?)";


}


MajCmd.CommandText=reqMaj;


MajCmd.Parameters.Add("", OdbcType.VarChar).Value =mainReader["sl_nom"].ToString();


MajCmd.Parameters.Add("", OdbcType.VarChar).Value =mainReader["sl_images"].ToString();


MajCmd.Parameters.Add("", OdbcType.VarChar).Value =mainReader["sl_parametres"].ToString();


MajCmd.Parameters.Add("", OdbcType.Int).Value =
int.Parse(mainReader["sl_id"].ToString());


MajCmd.Parameters.Add("", OdbcType.VarChar).Value =mainReader["sl_page"].ToString();


MajCmd.Parameters.Add("", OdbcType.VarChar).Value =mainReader["sl_texte"].ToString();


MajCmd.Parameters.Add("", OdbcType.Int).Value =op_id;


MajCmd.ExecuteNonQuery();


}



//possibilité de changer le texte de la requete sans fermer la connexion???


MajCmd.Connection.Close();

Mais ca ne marche pas... le changement de requete n'est pas pris en compte, et ce même si je ferme et ouvre la conection dans la boucle......

Q'est-ce qui manque a mon code???

6 réponses

SharpMao Messages postés 1024 Date d'inscription mardi 4 février 2003 Statut Membre Dernière intervention 7 juin 2010 69
27 juin 2005 à 16:35
Hello,

Je ne suis pas sur que ton problème vienne du CommandText.

Essaie de faire un MajCmd.Parameters.Clear() avant de faire les Add.
Autrement, il va toujours prendre les paramètres que tu as mis lors de la première itération.

Amicalement, SharpMao
3
Arthenius Messages postés 1182 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 6 septembre 2011 14
27 juin 2005 à 16:38
tu n'a pas le meme nombre de parametre dans tes deux requetes...



il faut ajourter le bon nombre de parametre a ton objet cmd...
de plus je ne mettrais pas le Parameters.add dans la boucle while...

l'ajout de parametre n'est a faire qu'une fois...

pour modifier les valeurs utilise cmd.parameters[0].Value = ......
cmd.Parameters[....].Value = ....

etc...


Arthenius
http://blogs.developpeur.org/Arthenius/

"Ce qui ne me tue pas, me rend plus fort..."
0
Arthenius Messages postés 1182 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 6 septembre 2011 14
27 juin 2005 à 16:39
plus rapide tu est sharpmao


Arthenius
http://blogs.developpeur.org/Arthenius/

"Ce qui ne me tue pas, me rend plus fort..."
0
SharpMao Messages postés 1024 Date d'inscription mardi 4 février 2003 Statut Membre Dernière intervention 7 juin 2010 69
27 juin 2005 à 16:43
Hello Arthénius,

Désolé, mais tu as dû mal voir, en effetm il n'y a pas le même nombre de champs insérés, mais dans values(?,?,?...
La première finit ave ',1', le compte est bon.

Amicalement, SharpMao
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
engelho Messages postés 115 Date d'inscription mercredi 26 mai 2004 Statut Membre Dernière intervention 2 août 2005
27 juin 2005 à 16:43
merci beaucoup. le clear me manquais effectivement.

Pour le nombre de paramètres, je sais qu'il n'y a pas le même nombre... c'est normal..
0
Arthenius Messages postés 1182 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 6 septembre 2011 14
27 juin 2005 à 16:53
certes je m'inclines et je sors


Arthenius
http://blogs.developpeur.org/Arthenius/

"Ce qui ne me tue pas, me rend plus fort..."
0
Rejoignez-nous