wajour123456
做真实的自己Virgil
采纳率0%
2015-10-10 18:17

各位老师,想问个SQLReader返回内容有Null怎么判断的问题

3

我是用Vb.net来写了一个独立数据连接类,以下是类方法,但在实际学习是遇到执行SQL查询可能返回是Null调试就报异常了,请问老师有什么方法判断是否为Null然后跳过处理的,谢谢
Function DoSQL(sqlString As String, Optional style1 As String = "String", Optional strFormat As String = "") As String()
Dim con As New SqlConnection(ConnectString)
Dim cmd As New SqlCommand("", con)
Dim Lr As New List(Of String)
Dim dbReader As SqlDataReader
cmd.CommandText = sqlString
Try
con.Open()
dbReader = cmd.ExecuteReader

        If dbReader.HasRows = True Then
            Select Case True
                Case style1 = "String"
                    While dbReader.Read
                        Lr.Add(CStr(dbReader.GetString(0)))
                    End While
                Case style1 = "Int32"
                    While dbReader.Read
                        Lr.Add(CStr(dbReader.GetInt32(0)))
                    End While
                Case style1 = "Double"
                    While dbReader.Read
                        Lr.Add(CStr(dbReader.GetDouble(0)))
                    End While
                Case style1 = "Decimal"
                    While dbReader.Read
                        Lr.Add(CStr(dbReader.GetDecimal(0)))
                    End While
                Case style1 = "Boolean"
                    While dbReader.Read
                        Lr.Add(CStr(dbReader.GetBoolean(0)))
                    End While
                Case Else
            End Select
        Else
            Return {"Null"}
        End If
        con.Close()
        dbReader.Close()
        Return Lr.ToArray()
    Catch ex As SqlException
        Debug.Print(ex.Message)
        Return {"Null"}
    End Try
End Function

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

2条回答

  • caozhy 从今以后生命中的每一秒都属于我爱的人 6年前
     在你的sql加上 where 字段 <> null
    或者在你的代码判断dbReader(字段) is nothing
    
    点赞 2 评论 复制链接分享
  • wajour123456 做真实的自己Virgil 6年前

    老师你好,因为我的字段不固定,能有通过序号返回字段的吗

    点赞 评论 复制链接分享

相关推荐