Null uit query levert exception op

Status
Niet open voor verdere reacties.

Haaren101

Terugkerende gebruiker
Lid geworden
4 apr 2007
Berichten
3.195
Ik haal met een select query gegevens uit een MsAccess database. Gaat allemaal goed behalve als er niets gevonden wordt. Ik krijg dan een exeption:
conversion from type 'DBNull' to type 'Double' is not valid

Code:
Function GetN1() As Double
        Dim Qstring As String
        Dim cn As OleDbConnection
        Dim cmd As OleDbCommand
        Dim dr As OleDbDataReader

        GetN1 = 0.0

        Qstring = "SELECT " & Csel()
        Qstring = Qstring & " FROM tblN_Constant "
        Qstring = Qstring & "WHERE constant='N1' AND "
        Qstring = Qstring & "quantity = '" & Qsel() & "' AND "
        Qstring = Qstring & "pressure = '" & Psel() & "' AND "
        Qstring = Qstring & "density = '" & DensSel() & "'"

        Try
            cn = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=D:\Projects\ValCal\Revision0\ValCalTest.mdb;")
            'provider to be used when working with access database
            cn.Open()
            cmd = New OleDbCommand(Qstring, cn)
            dr = cmd.ExecuteReader
            If dr.Read() Then
                GetN1 = dr(0)
            End If
            frmMain.lblN1.Text = Format(GetN1, "##0.000")
        Catch ex As Exception
            MsgBox("0d0100: " & ex.Message)
        End Try
        dr.Close()
        cn.Close()

    End Function

Hoe kan ik dit opvangen, dus niet in de catch terecht komen?

Ron
 
Bijna goed; moest zijn IsDbNull:

Code:
                If Not IsDBNull(dr(0)) Then
                    GetN1 = dr(0)
                End If

Had er mee zitten rommelen maar 's morgens vroeg ben ik kennelijk helderder dan 's avonds:D

Bedankt
Ron
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan