Execution d'une requete

Résolu
maitesn1 Messages postés 54 Date d'inscription mercredi 14 juin 2006 Statut Membre Dernière intervention 29 août 2006 - 2 août 2006 à 12:09
maitesn1 Messages postés 54 Date d'inscription mercredi 14 juin 2006 Statut Membre Dernière intervention 29 août 2006 - 2 août 2006 à 15:10
Bonjour tout le monde,
je souhaiterai faire une requete qui permet d'inserer une ligne dans une table et en meme temps me recuperer id de la ligne qui vient d'etre inserer.je fais la requete suivante:
string

desResAtt =
this.textBox1.Text;
string

requeteInsertRes =
"INSERT INTO RESULTATATTENDU (DECRIPTION_REP_ATT) VALUES(\'" + desResAtt +
"\');SELECT @@IDENTITY AS v_id_resAtt ";

Pour executer la requete, apres avoir ouvert ma connection, je fais :

DbCommand myCmdInsert =
new
SqlCommand(requeteInsertRes, (
SqlConnection)cnx);
maintenant je ne sais pas si je dois faire un myCmdInsert.ExecuteNonQuery()ou unmyCmdInsert.ExecuteReader().

Si quelqu'un a deja rencontre ce type de requete, pourrait il me dire quelle méthode utiliser ou me donner un exemple?
je vous remercie d'avance pour vos reponses

2 réponses

MorpionMx Messages postés 3466 Date d'inscription lundi 16 octobre 2000 Statut Membre Dernière intervention 30 octobre 2008 57
2 août 2006 à 12:40
Salut

En fait, si tu fais plutot myCmdInsert.ExecutreScalar() cela te retournera un objet que tu n'auras qu'a caster en int, et qui aura la valeur de ton @@IDENTITY

Mx
MVP C# 
3
maitesn1 Messages postés 54 Date d'inscription mercredi 14 juin 2006 Statut Membre Dernière intervention 29 août 2006
2 août 2006 à 15:10
Super ça marche!!
 par contre pour le cast en int j'ai du faire Int32

.Parse(myCmdInsert.ExecuteScalar().ToString())  car
(int) myCmdInsert.ExecuteScalar() ne marchait pas .

milles merci

Maité
0
Rejoignez-nous