我想生成一些从MS-Access数据库检索并存储在DataTable对象/变量myDataTable中的数据的格式化输出。但是,myDataTable类别中的一些字段dbNull数据。因此,如果任何字段lastname,intials或sID的值为dbNull,以下VB.net代码段将给出错误。
dim myDataTable as DataTable dim tmpStr as String dim sID as Integer = 1 ... myDataTable = myTableAdapter.GetData() ' Reads the data from MS-Access table ... For Each myItem As DataRow In myDataTable.Rows tmpStr = nameItem("lastname") + " " + nameItem("initials") If myItem("sID")=sID Then ' Do something End If ' print tmpStr Next
所以,我如何得到上述代码工作,当字段可能包含dbNull,而不必检查每次,如果数据是dbNull在this question?
我知道的唯一方法是测试它,你可以做一个组合,如果虽然,使容易。
If NOT IsDbNull(myItem("sID")) AndAlso myItem("sID") = sId Then 'Do success ELSE 'Failure End If
我在VB编写,因为这是什么看起来像你需要,即使你混合的语言。
编辑
清理后使用IsDbNull,使其更易读