How to test for Null values in ADODB recordset in VB.Net RRS feed

  • 問題

  • What is the easiest way to test for a Null value in an ADODB recordset when using VB.Net.

    The IsNull function does not work in VB.Net, or so it seems.



    2006年9月15日 下午 04:09


  • IsDBNull() replaces the isNull function in VB

    2006年9月15日 下午 05:11


  • I believe it should be DBNull.Value

    Even though to you and me its still "null" - its a different type value meaning pretty much the same thing generally

    does this help?

    2006年9月15日 下午 04:21
  • I tried it as follows

    Dim nulltest as DBNull

    nulltest = DBNull.Value

    if rs.fields("Tonne").value = nulltest then

    but I get the following error

    Operator '=' not defined for types System.DBNull and Object

    2006年9月15日 下午 04:44
  • yes you can't do that. It should be:


    if rs.fields("Tonne").Value = DBNull.Value then

       'whatever here

    end if

    2006年9月15日 下午 05:00
  • IsDBNull() replaces the isNull function in VB

    2006年9月15日 下午 05:11
  • probably uses DBNull.Value in the function ;-)
    2006年9月15日 下午 05:22

    If ( Not Convert.IsDBNull( dr("FirstName") ) ) Then

    Me._firstName = Cstr( dr("FirstName") )

    End If

    2007年8月23日 下午 08:48
  • Fuc...g  AWESOME  Udhai....
    • 已提議為解答 Cyber Ghost 2009年8月4日 下午 08:15
    2009年3月25日 上午 08:56
  • Ok , took me a while to get logged on here but here is the best way of doing it.

    Dim NULL as System.DBNull = System.DBNull.Value

    name = iif(rs(0).value is null,"Unknown",rs(0).value)


    qty = iif(rs(1).value is NULL ,0,rs(1).value)

    this can also be done replacing the rs(0).value with the name of the actual field as indicated above "FirstName"

    This way, the value returned will always be validated against a null value, and in such event, the null value will then be replaced by "Unknown" or 0 but in the event of there not being a null value, the actual value will be returned.


    sorry for the late reply


    2009年8月4日 下午 08:21
  • handling dbnull in vb.net - full source code





    2011年9月14日 下午 04:36
  • this work for me:


    2018年10月4日 下午 05:18