DataSet, Mysql, recupération de valeur [Résolu]

gretata 172 Messages postés lundi 22 mai 2006Date d'inscription 19 janvier 2011 Dernière intervention - 27 mai 2007 à 20:06 - Dernière réponse : mout551 7 Messages postés lundi 2 avril 2007Date d'inscription 4 juin 2007 Dernière intervention
- 1 juin 2007 à 17:58
bonjour a tous !!

je voudrais savoir comment on peut récupérer une valeur d'un DataSet, ou comment recuperer une valeur d'une requette MySql.

public
DataSet Compter(
String nomtable,
String champ){

int nombre;

// On ouvre la connexionConnection.Open();

// On définit la requête SELECT à exécuter

string MySQLCmd =
"SELECT count(" + champ +
") FROM " + nomtable;

// On associe cette requête à la propriété SelectCommand du MySqlDataAdapterMyAdapter.SelectCommand =

new
MySqlCommand(MySQLCmd, Connection);

// On remplit le dataset avec le résultat de la commande SELECTMyAdapter.Fill(ds);

// On ferme la connexion le plus tôt possibleConnection.Close();

return ds;

}

j'ai vue que l'on pouvai faire ds.Tables[0] mais sa m'envoi un truc qui na rien avoir. sinon on peut le mettre dans un datagrid, mais mois je voudrais le recupéré en string ou en entier, ou regarder dans le dataset la valeur,

Merci beaucoup
Afficher la suite 

7 réponses

Répondre au sujet
MorpionMx 3489 Messages postés lundi 16 octobre 2000Date d'inscription 30 octobre 2008 Dernière intervention - 27 mai 2007 à 20:52
+3
Utile
Salut,

Pourquoi passer par un dataset/DataApter pour ca ?
Instancies ton SqlCommand, et appele sa méthode ExecuteScalar() qui te renvoies une valeurs unique sous forme d'object. Cette valeur est la premiere colonne de la premiere ligne de ta requete (qui est de toutes facons unique dans ton cas), a savoir le résultat du Count(). Tu n'as plus qu'a la caster en int :)
Mx
MVP C# 
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de MorpionMx
gretata 172 Messages postés lundi 22 mai 2006Date d'inscription 19 janvier 2011 Dernière intervention - 27 mai 2007 à 21:35
0
Utile
ok merci, il ne veut pas me le caster ??
Commenter la réponse de gretata
gretata 172 Messages postés lundi 22 mai 2006Date d'inscription 19 janvier 2011 Dernière intervention - 27 mai 2007 à 21:38
0
Utile
ok ça fonctionne, merci beaucoup, je peut utiliser la meme chose pour un SELECT * FROM matable , puis faire un ExecuteScalar()  dans une variable par exemple, mais pour que j'ai tout. le mettre dans un pour ou autre boucle ??
Commenter la réponse de gretata
MorpionMx 3489 Messages postés lundi 16 octobre 2000Date d'inscription 30 octobre 2008 Dernière intervention - 27 mai 2007 à 21:44
0
Utile
En fait la il faut utiliser la méthode ExecuteReader() qui te retourne un DataReader.

ensuite,

while(tonDataReader.Read())
{
   string champ1 = tonDataReader["nomDuChamp"].ToString();
}

Mx
MVP C# 
Commenter la réponse de MorpionMx
gretata 172 Messages postés lundi 22 mai 2006Date d'inscription 19 janvier 2011 Dernière intervention - 27 mai 2007 à 21:46
0
Utile
Merci beaucoup ceci me débloque vraiment, encore merci et bonne soirée
Commenter la réponse de gretata
MorpionMx 3489 Messages postés lundi 16 octobre 2000Date d'inscription 30 octobre 2008 Dernière intervention - 27 mai 2007 à 21:47
0
Utile
y'a pas de quoi :)

Mx
MVP C# 
Commenter la réponse de MorpionMx
mout551 7 Messages postés lundi 2 avril 2007Date d'inscription 4 juin 2007 Dernière intervention - 1 juin 2007 à 17:58
0
Utile
Bonjour,

Auriez vous le code final corespondant à cette solution ?
Mon probleme provient de la valeur retourné sous forme d'objets.

Merci de votre aide..
Commenter la réponse de mout551

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.