Test sur la valeur retournée par une requete sql

pigeon11 Messages postés 16 Date d'inscription samedi 21 mars 2009 Statut Membre Dernière intervention 4 mai 2009 - 8 mai 2009 à 14:16
titeoe Messages postés 433 Date d'inscription samedi 26 avril 2003 Statut Membre Dernière intervention 4 décembre 2009 - 11 mai 2009 à 14:57
Bonjour,

Je veux tester si la valeur retounée par une requte sql est nulle ou bien égale à 0.

- Pour tester si elle est nulle je fais :
   
      If  IsDBNull
((monDataTable.Rows(RowNumber).Item("x")))
--> ça marche

- Pour tester si la valeur est égale à 0 je fais :
  
     If  ((ObjetDataTable.Rows(RowNumber).Item("x")).Equals(0)) 
    --> ce dernier test ne marche pas 

si je fais :
If  ((ObjetDataTable.Rows(RowNumber).Item("x"))=0)

ça me donne l'erreur  suivante :
L'opérateur = n'est pas défini pour le type dbnull ou integer

Comment tester  que la valeur est ègale à zéro ?

Merci

      

1 réponse

titeoe Messages postés 433 Date d'inscription samedi 26 avril 2003 Statut Membre Dernière intervention 4 décembre 2009 1
11 mai 2009 à 14:57
Bonjour,

Il faut déja caster le contenu de ta cellulle en intéger.


if ( (ObjetDataTable.Rows(RowNumber).Item("x") != null )
{
int i = Int16.Parse ( (ObjetDataTable.Rows(RowNumber).Item("x").ToString() ) ;
if ( i != 0 )
// nok
else
// ok
}

NB : la j'utilise Parse() pour l'exemple, dans la vraie vie on utiliserai TryParse() http://msdn.microsoft.com/en-us/library/f02979c7.aspx
0
Rejoignez-nous