cs_MagDix
Messages postés532Date d'inscriptionlundi 5 juin 2006StatutMembreDernière intervention 6 octobre 2012
-
30 avril 2008 à 13:59
cs_MagDix
Messages postés532Date d'inscriptionlundi 5 juin 2006StatutMembreDernière intervention 6 octobre 2012
-
30 avril 2008 à 18:09
Salut...
J'ai encore mon problème avec le DBNull avec ADO.Net
Je ne saisi pas pourquoi ca fais cela comme problème.
J'ai un DataGrid et j'affiche ma BD dans ce datagrid.
Je peux modifier la BD à partir du DataGrid.
Dans ma BD j'ai une dizaine de colonne avec plusieurs lignes (1500) et certaines cellules contiennent de l'information et d'autre pas.
Pour une raison que j'ignore, j'ai une problème avec ma huitième colonne. Si elle je veux faire une modification sur une ligne et
que la cellule de ma huitième colonne est vide alors j'ai ce message d'erreur:
InvalidCastException was unhandled
La conversion du type 'DBNull' en type 'String' n'est pas valide.
Comment je peux coder ma requête SQL si j'ai une cellule vide.
Dans ma BD j'ai mis toutes les colonne à Chaînes vider autorisé à True
Mes colonnes sont tous du texte
Je suis avec Access 2002
nhervagault
Messages postés6063Date d'inscriptiondimanche 13 avril 2003StatutModérateurDernière intervention15 juillet 201137 30 avril 2008 à 17:14
Salut
reader("col8").toString() --> ne pose pas de probleme avec DbNull.Value() il me semble
Sinon il faut utiliser par exemple
reader("datecreation").Equals(DBNull.Value) ? new DateTime() : DirectCast(reader("datecreation"),DateTime)
Je ne sais pas si ca fonctionne l'operateur ? : en vb.net c'est une traduction a la louche du c#
sinon il faut utiliser la forme verbeuse
if reader("datecreation").Equals(DBNull.Value) then
monobjet.date = new DateTime()
else
monobjet.date = DirectCast(reader("datecreation"),DateTime)
end if