Certaines tables auxquelles j'ai affaire ont des valeurs nulles et sont des erreurs de lancement. Jusqu'à présent, j'ai essayé quelques solutions pour traiter les nulls sans succès.SQLDataReader: Traitement des valeurs nulles
Voici les exemples de code de mes efforts jusqu'ici;
If (r("datemodified").Equals(DBNull.Value)) Then
datemodified = String.Empty
Else
datemodified = (r("datemodified"))
End If
et;
If r.HasRows Then
datemodified = (r("datemodified"))
Else
datemodified = String.Empty
End If
et;
If r("datemodified") = Nothing Then
datemodified = String.Empty
Else
datemodified = (r("datemodified"))
End If
et;
If r.IsDBNull("datemodified") Then
datemodified = String.Empty
Else
datemodified = (r("datemodified"))
et via sql;
Select isnull(datemodified, '')
Le résultat final est une exception IndexOutOfRangeException.
voici le sql;
select datemodified, maintainedby, email, hitcount from grouping where id = @footid
ps, j'ai couru la requête et il fonctionne ok (ie tous les cols existent)
'IOORE' _where_? –
datemodified (si je commente cette ligne, alors elle en jette immédiatement une autre sur la ligne suivante qui est maintenue par) La raison pour les NULL est quand les gens mettent à jour les pages qu'ils ne remplissent pas toujours les détails. Personnellement, je refuserais les nulls, mais le db est un héritage. – Phil
Pouvez-vous ajouter votre SQL que vous utilisez à votre question? – Kamal