Сохранение TimeSpan со значением 00:00:00 в базе данных - рассматривается как NULL - PullRequest
0 голосов
/ 06 декабря 2011

Я пытаюсь сохранить переменную TimeSpan из VB в базу данных SQL, в ненулевой столбец.

Работает нормально для других значений, но когда я пытаюсь сохранить 00:00:00Мне сказали, что я не могу сохранить NULL в ненулевой столбец ...

Есть ли способ заставить его сохранить это, а не думать, что это NULL?

Cheers

Примечание. Этот код является методом в классе, у которого есть свойство:

Private mCommand As New SqlCommand

Dim Param As New SqlParameter
Param.ParameterName = "@" + ParameterName
Param.SqlDbType = SqlDbType.VarChar
If Value Is Nothing Then
   Param.Value = DBNull.Value
Else
   Param.Value = Value
End If
Param.Size = Size
Param.Direction = Direction

mCommand.Parameters.Add(Param)

1 Ответ

0 голосов
/ 07 декабря 2011

Похоже, что невозможно провести различие между тем, действительно ли значение 00:00:00 является значением, или если оно должно рассматриваться как Ничто.

Поэтому в коде, который я разместил, я удалил проверку на Ничто.выше, и оставил как просто

Dim Param As New SqlParameter
Param.ParameterName = "@" + ParameterName
Param.SqlDbType = SqlDbType.VarChar
Param.Value = Value
Param.Size = Size
Param.Direction = Direction

mCommand.Parameters.Add(Param)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...