在VB.NET中如何判断数据库字段为空

开发环境:visual studio 2019

开发语言:vb.net

数据库:mysql,使用mysql 官方提供的mysqlconnecter进行链接。

问题描述:在执行一个sql查询时,有一个字段为空,如果直接获取这个字段的值就会报错,比如下面这样。

label1.text=reader.getstring(1)

reader是mysql连接器提供的一个对象,用来存放单向结果集。getstring(1)表示取出ID为1的字段的值,并转化成string。如果该字段为空,上面的语句就会报错。

如果想判断下对象是否为null,下面这样写也会报错:

if string.isnullorempty(reader.getstring(1)) then

xxxx

end if

因为reader.getstring()方法已经默认字段有值,并开始转换,所以会报错。正确的判断方法是

if isDBNull(reader(1))               

end if

上面的写法中reader(1)会直接返回该字段的状态,用vb.net内置函数 isDBNull进行判断就行了。

发表评论