Comment passer d'une date Null variable de base de données SQL Server
Je suis à la recherche de la meilleure pratique, la vraie solution, pour envoyer un Null
à un Serveur SQL server 2008 R2 table de base de données, lorsqu'une date est inconnue.
J'ai lu quelques entrées à partir d'un formview, et un champ de date peut-être inconnu. La base de données autorise les valeurs Null dans le champ, mais le VB pour stocker la valeur Null avant une requête paramétrée mise à jour ne fonctionne pas/m'échappe.
Dim tb2 As TextBox = TryCast(FormView1.FindControl("tbPurchDate"), TextBox)
Dim purDT As Date
If tb2.Text = "" Then
IsDBNull(purDT) ' Tried this along with other possible code
Else
purDT = Convert.ToDateTime(tb2.Text)
End If
Toute aide serait grandement appréciée.
Si tu veux dire que c', je l'ai essayé....Dim purDT Comme Nullable(DateTime)
Oh, absolument, je pense que je l'ai déclaré que, dans l'OP.
OK. Oubliée.
Oh, absolument, je pense que je l'ai déclaré que, dans l'OP.
OK. Oubliée.
OriginalL'auteur htm11h | 2013-03-12
Vous devez vous connecter pour publier un commentaire.
Si la date est inconnue, envoyer
DbNull.Value
que la valeur du paramètre:Vous êtes les bienvenus:), je ne devrais pas le formater comme ça, mais il a sa place dans la largeur disponible.
OriginalL'auteur Andrew Morton
Cela dépend de la méthode de données que vous utilisez pour envoyer les données au serveur.
purDate est une variable de type DateTime et il ne peut pas être null.
Je vous suggère d'utiliser IsDate au lieu de tester la longueur.
OriginalL'auteur rheitzman
Vous pouvez utiliser le
Nullable(Of Date)
pour permettre à votrepurDT
variable également êtreNothing
:Cependant, la magie qui se produit lorsque vous définissez le paramètre SQL qui va contenir cette valeur. Le paramètre doit être
DBNull.Value
ou un valide (non-nulle)Date
:OriginalL'auteur Cristian Lupascu
Essayez ceci :
Essayez un "Nullable" puis : voir mon edit.
OriginalL'auteur SolarBear