1

对不起我的英语不好

我想问如何检查行中是否有值?

提前致谢 :)

Private Sub uploadpic()

    Dim SQLCmd As New MySqlCommand("SELECT Picture FROM Student_information WHERE S_I_D = ('" & ListView1.Items(ListView1.FocusedItem.Index).SubItems(0).Text & "') ", dbcon)

    dbcon.Open()

    *Dim pictureData As Byte() = DirectCast(SQLCmd.ExecuteScalar(), Byte())*

    dbcon.Close()

    Dim picture As Image = Nothing

    'Create a stream in memory containing the bytes that comprise the image.

    Using stream As New IO.MemoryStream(pictureData)
        'Read the stream and create an Image object from the data.
        PictureBox4.Image = Image.FromStream(stream)
    End Using


End Sub
4

2 回答 2

1

SQLCmd.ExecuteScalar()如果结果集为空,将返回空引用。因此,您可以检查该值以了解该行中是否存在值。

于 2013-03-04T23:56:40.883 回答
0

试试这个

Dim sql As string("SELECT Picture FROM Student_information WHERE S_I_D = ('{0}')",ListView1.Items(ListView1.FocusedItem.Index).SubItems(0).Text)
    tbl = GetRecords(sql)
        If tbl.Rows.Count > 0 Then
            'Code to execute
        Else
        exit sub 'or msgbox "record not found"
        End If 

Public Function GetRecords(ByVal sql As String) As DataTable
    Return GetRecordsExtracted(sql)
End Function

Private Function GetRecordsExtracted(ByVal sql As String) As DataTable
    Dim da As New SqlClient.SqlDataAdapter
    tbl = New DataTable
    da = New SqlClient.SqlDataAdapter(sql, dbcon.Open)
    da.Fill(tbl)
    Return tbl
End Function
于 2013-03-05T05:39:50.603 回答