Aide avec les ScalarQuery :|

c0nsur Messages postés 42 Date d'inscription lundi 15 septembre 2003 Statut Membre Dernière intervention 11 janvier 2007 - 1 nov. 2005 à 16:03
c0nsur Messages postés 42 Date d'inscription lundi 15 septembre 2003 Statut Membre Dernière intervention 11 janvier 2007 - 1 nov. 2005 à 17:12
Bonjour je me demandais comment récupérer une valeur apres une requete du genre :



Select champs from table where id=1;



jai déja mon table adapter,

this.templatesTableAdapter.ScalarQuery(IdSite);



mais evidemment, ca marche pas de mettre :

VARIABLE =
this.templatesTableAdapter.ScalarQuery(IdSite);



Alors que faire?



Merci

Luc

5 réponses

cs_coq Messages postés 6351 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
1 nov. 2005 à 16:17
De ce que je sais "Scalar" te permet de récupérer une seule donnée, en général celle de la première colonne de la première ligne du jeu de résultats, donc ce n'est logiquement pas la bonne méthode.
Tu dois avoir une méthode Fill ou GetData qui te permet de travailler avec des DataTable.

/*
coq
MVP Visual C#
*/
0
c0nsur Messages postés 42 Date d'inscription lundi 15 septembre 2003 Statut Membre Dernière intervention 11 janvier 2007
1 nov. 2005 à 16:26
le probleme, cest que dans un projet que jai fait il y a environ 6 mois, je fesais ca :

int mynum = (int)this.proxiesTableAdapter.ScalarCountAllQuery();



et, oui, ca marchait #1.



et c'est une bonne facon de faire car si je fais 'Fill', ben c'est
simple, la plus part du temps, ca retourne une rangée au complet par
une commande du genre :



select * from table



et moi je spécifie vraiment un champs



select champs from table WHERE id=1;



dans mon querry builder ca marche, et retourne la valeur du champs sans
aucun probleme, mais le code ne s'exécute pas, surement une erreur de
typographie, je sais pas trop



quelqu un a une idée?

luc.
0
c0nsur Messages postés 42 Date d'inscription lundi 15 septembre 2003 Statut Membre Dernière intervention 11 janvier 2007
1 nov. 2005 à 16:40
AHHH je vois ce que tu veux dire,

Scalar est surtout réservé aux types du genre SUM, AVG, COUNT ou autre fonctions d'aggrégation.......



, bon alors je repose la question,



SANS changer mon tableadapter est il possible de recupperer seulement 1 valeur directement?
0
cs_coq Messages postés 6351 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
1 nov. 2005 à 16:49
Euh non je ne voulais pas dire ça, je n'avais pas compris que tu voulais jsutement ne récupérer qu'une seule valeur. (j'avais pris "champs" comme indiquant plusieurs champs justement)
Donc je ne sais pas d'où peut venir ton problème.

/*
coq
MVP Visual C#
*/
0

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

Posez votre question
c0nsur Messages postés 42 Date d'inscription lundi 15 septembre 2003 Statut Membre Dernière intervention 11 janvier 2007
1 nov. 2005 à 17:12
hum maintenant, ca me donne ca:



mais, le champs de retour est bel et bien un String....

Cannot implicitly convert type 'int?' to 'string'

le probleme, c'est qu il est de type MEMO dans ma base access car il doit contenir plus de 255 caracteres....



est ce le type qui cause un probleme?

sinon je peux pas voir c'est quoi l'erreur!



Merci

luc.
0