cs_MagDix
Messages postés531Date d'inscriptionlundi 5 juin 2006StatutMembreDernière intervention 6 octobre 2012
-
1 oct. 2008 à 15:00
cs_thierry la fronde
Messages postés351Date d'inscriptionmercredi 21 juillet 2004StatutMembreDernière intervention12 août 2009
-
1 oct. 2008 à 15:17
Salut à tous...
Pour une raison que j'ignore mon UPDATE fonctionnait correctment et maintenant ca ne fonctionne plus :(
Je veux "updater" une ligne de ma base de donnée à partir d'un datagridview.
j'ai une cellule qui est vide et je veux j'.entre une inmfo dans cette cellule...
Lorsdque j'arrive à ma requête SQL j'ai un message d'erreur disant:
La conversion du type 'DBNull' en type 'String' n'est pas valide.
Je ne trouve pas où est mon erreur... Si quelqu'un peut me donner un coup de mains
cs_thierry la fronde
Messages postés351Date d'inscriptionmercredi 21 juillet 2004StatutMembreDernière intervention12 août 2009 1 oct. 2008 à 15:17
bonjour,
C'est parce que tu dois essayé d'affecter une variable (qui n'est pas initialisé et qui a la valeur DBNull) à un champ qui reçoit un String. (ou l'inverse)
test tous tes champs avant de les affecter :
if not IsDBNull (MonTexte) then
'je fais ce que je veux
end if
cela peut t'obliger à scinder la construction de ta chaine de requête
voici un exemple de code que j'ai pu faire :
ChaineSqlInsert = "INSERT INTO T_Apprenant("
ChaineSqlValues = "VALUES ('"
If MonTitre <> "" Then
ChaineSqlInsert &= "Titre"
ChaineSqlValues &= MonTitre
Else
EstValide = False
End If
If EstValide And MonNom <> "" Then
ChaineSqlInsert &= ",Nom"
ChaineSqlValues &= "','" & MonNom
Else
EstValide = False
End If
.....
'puis à la fin :
If EstValide Then
ChaineSqlInsert &= ")"
ChaineSqlValues &= "');"
LaRequete = ChaineSqlInsert & ChaineSqlValues
End If
thierry la fronde