La requete a se rappeler

Résolu
poomen Messages postés 117 Date d'inscription dimanche 2 janvier 2011 Statut Membre Dernière intervention 25 mars 2011 - 9 mars 2011 à 11:38
poomen Messages postés 117 Date d'inscription dimanche 2 janvier 2011 Statut Membre Dernière intervention 25 mars 2011 - 9 mars 2011 à 12:58
je travaille en ado.net , c # , je voudrais afficher le nombre de prof que j'ai , j'ai la table matiére , les champ sont : prof, matiére , efm, langue , et ceux qui qui est important de l'afficher dans un message box !!
select count(prof) from matiére ! et le message box affiche : le nombre de prof sont : (count) merci pour votre aide

6 réponses

cs_jopop Messages postés 1540 Date d'inscription lundi 26 mai 2003 Statut Membre Dernière intervention 1 août 2013 12
9 mars 2011 à 12:42
Voilà à quoi pourrait ressembler ton bloc de code :
	// on crée la connexion et la requête
SqlConnection con = new SqlConnection("chaine2connexion");
SqlCommand com = con.CreateCommand();
com.CommandText = "SELECT COUNT(*) FROM matiere";

// on ouvre la connexion, on requête, on ferme la connexion
con.Open();
object ocount = com.ExecuteScalar();
con.Close();

// on affiche le résultat dans une MessageBox
MessageBox.Show(ocount.ToString(), "Résultat");


la méthode ExecuteScalar renvoie la première colonne de la première ligne du résultat de ta requête. ça tombe bien, ta requête (SELECT COUNT) ne renvoie qu'une ligne à une seule colonne ;)

A noter que cette fonction renvoie un object vu que le retour peut prendre toutes les formes possibles (int, string, byte[], DateTime ...). Dans ton cas tu pourrais caster ocount en int, mais si tu cherches juste à l'afficher ce n'est pas nécessaire.

Pour terminer je ferai également remarquer qu'aucune gestion des exceptions n'est fait dans mon code, à toi de faire les modif.
3
cs_jopop Messages postés 1540 Date d'inscription lundi 26 mai 2003 Statut Membre Dernière intervention 1 août 2013 12
9 mars 2011 à 11:43
Salut,

pourrais-tu mettre ton code ?
Là il est difficile de voir d'où vient l'erreur.
0
poomen Messages postés 117 Date d'inscription dimanche 2 janvier 2011 Statut Membre Dernière intervention 25 mars 2011
9 mars 2011 à 12:01
bon , voila le code , mais j'amerai qu'il me l'affiche dans un message box

SqlConnection con = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|gestion_materiel.mdf;Integrated Security=True;User Instance=True");
SqlDataAdapter adap = new SqlDataAdapter();
adap.SelectCommand = new SqlCommand("select count(prof) from matiére" + "'", Program.con);

adap.Fill(x);
dataGridView1.DataSource = x.Tables[0];
normalement j'affiche les donnée dans un datagrid , mais je veux faire ca dans un message box , comment récupérer la valeur de la requete ?? merci pour ton aide
0
poomen Messages postés 117 Date d'inscription dimanche 2 janvier 2011 Statut Membre Dernière intervention 25 mars 2011
9 mars 2011 à 12:52
Merci merci merci.....beaucoup pour ta bonne réponse ! :D
0

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

Posez votre question
cs_jopop Messages postés 1540 Date d'inscription lundi 26 mai 2003 Statut Membre Dernière intervention 1 août 2013 12
9 mars 2011 à 12:54
Si tu es satisfait de la réponse (teste avant, hein ^^) met le topic en "résolu", pour que :
- les autres personnes qui aident ne viennent pas pour rien,
- les personnes qui ont la même demande que toi sachent qu'ils trouveront une réponse ici ;)
0
poomen Messages postés 117 Date d'inscription dimanche 2 janvier 2011 Statut Membre Dernière intervention 25 mars 2011
9 mars 2011 à 12:58
Oui , t'a raison , c'est fait....le teste aussi : :D Merci..! :D
0
Rejoignez-nous