我有一个数据库,其中列中没有值(所以是null),但是我无法在vb.net中处理它。我尝试使用以下代码:
null
reader.Read() If String.IsNullOrEmpty(reader.GetString(0)) Then Return Else tilbulfolderTextBox.Text = reader.GetString(0) End If
以及:
If reader.Read() = False Then
与:
If IsDBNull(reader.Read()) Then
但是显然这是行不通的,因为在此方法Else无法获取Null值之后,我在语句上出现了异常。我想您会通过阅读代码本身来弄清楚我对程序的要求。
Else
Null
定义了DbDataReader基础对象的IsDBNull方法来处理这种情况。 当然,如果reader.Read()返回false(意味着没有更多行可用),您将无法尝试读取内容。
If reader.Read() Then If reader.IsDBNull(0) Then Return Else tilbulfolderTextBox.Text = reader.GetString(0) End If End If
另外,我看不到更多的代码,但是请记住,如果您不关闭连接并处理此操作中涉及的对象,以这种方式返回可能是非常错误的
而且,是的,正如其他人指出的那样,Microsoft.VisualBasic程序集中也有一个名为IsDBNull的函数,但是,我更喜欢使用.NET框架中定义的类提供的方法,而不是使用与.NET框架兼容的方法。 VB的早期版本