如何使用vb.net窗口表单删除datagridview和数据库中的多个行

时间:2015-03-16 20:23:36

标签: database vb.net datagridview

我有一个数据网格视图加载这些代码:

    mycom.Connection = cn
    mycom.CommandText = <SQL> SELECT UserName,Activity,CDate as `Date` FROM tbl_activity </SQL>.Value

    Dim myadap As New MySqlDataAdapter(mycom)
    Dim mydt As New DataTable

    grdActivity.Columns.Add(colCB)
    myadap.Fill(mydt)
    grdActivity.DataSource = mydt
    myadap.Dispose()

我的删除按钮包含以下代码:

Dim selected As Integer
    selected = grdActivity.SelectedRows.Count
    If grdActivity.SelectedRows.Count > 0 Then
        'you may want to add a confirmation message, and if the user confirms delete
        For a As Integer = 0 To selected
            myr.Close()
            mycom.Connection = cn
            mycom.CommandText = "Delete from tbl_activity where ID = '" & a & "' "
            mycom.ExecuteReader()
            myr.Close()
        Next
    Else
        MessageBox.Show("Select 1 row before you hit Delete")
    End If

任何人都可以帮助我使用正确的代码,这样我就可以删除数据库中的有界行,不仅可以在我的数据网格视图中,还可以直接从数据库中删除...谢谢..

1 个答案:

答案 0 :(得分:0)

不要丢弃DataAdapter,可以使用它来更新数据库。如果使用适当的INSERT,UPDATE和DELETE命令配置myadap,则按钮单击代码只不过是错误处理而且:

myadapt.Update(mydt)

不要从网格中读取数据,让网格操纵它绑定的数据,DataAdapter将处理其余的数据。 我有一个完整的示例(对于MS SQL服务器)here