Только для справок в будущем:
У вас есть несколько способов проверить, не является ли значение db или нет.
Примеры приведены здесь с полным пространством имен.
Dim reader As System.Data.SqlClient.SqlDataReader
Dim fieldIndex As Integer = 0
' reader(fieldIndex) is equivalent to reader.Item(fieldIndex)
Dim fieldValue As Object = reader.Item(fieldIndex)
Dim isFieldValueNull As Boolean
' Namespace: System.Data.SqlClient; Class: SqlDataReader
isFieldValueNull = reader.IsDBNull(fieldIndex)
' Namespace: Microsoft.VisualBasic; Module: Information
isFieldValueNull = Microsoft.VisualBasic.IsDBNull(fieldValue)
' Namespace: System; Class: Convert
isFieldValueNull = System.Convert.IsDBNull(fieldValue)
' Namespace: System; Class: DBNull
isFieldValueNull = System.DBNull.Value.Equals(fieldValue)
Примечание: DBNull.Value
всегда есть экземпляр DBNull
поэтому она никогда не Nothing
!
Если вы хотите проверить, не имеет ли значение базы данных значение null, вы можете поместить ключевое слово Not
перед вызовом метода.
Dim isFieldValueNotNull As Boolean
isFieldValueNotNull = Not reader.IsDBNull(fieldIndex)
isFieldValueNotNull = Not Microsoft.VisualBasic.IsDBNull(fieldValue)
isFieldValueNotNull = Not System.Convert.IsDBNull(fieldValue)
isFieldValueNotNull = Not System.DBNull.Value.Equals(fieldValue)
Является ли «читатель» нулевым? – Cortright