La valeur SQL NULL pour la date est 1900-01-01 00:00:00.000
, Vous ne pourrez pas insérer de Date dans 0000-00-00 00:00:00.000
Je l'ai expérimenté récemment, ma solution pour cela est de stocker la valeur NULL et de la remplacer lors de l'affichage dans DataGridView ou Etc...
Exemple :
if DataGridView1.Rows(e.Index).Cells(10).Value.ToString = "1900-01-01 00:00:00.000" Then
DataGridView1.Rows(e.Index).Cells(10).Value = ""
End If