Zeile löschen von der Datenbank mit OLE DB

Habe ich diese Funktion arbeitet nur zur Hälfte berechtigt. Der Teil, der richtig ist, wo kann ich eine Zeile auswählen, die auf das DataGridView, rufen Sie diese Funktion mit einem "Zeile Löschen" - Taste, dann wird das löschen der Zeile aus der DataGridView....Es wird jedoch nicht die Zeile löschen in der Datenbank.

Kann mir jemand helfen mit dem löschen der Zeile aus der DB mithilfe von OleDb?

Function DeleteTableRow()
    Dim TaxConnStr As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & ConfigurationManager.AppSettings("Database")
    Dim dbConnection = New OleDbConnection(TaxConnStr)

    Try
        Dim dbCommand As OleDbCommand = New OleDbCommand
        Dim rdr2 As OleDbDataReader

        Dim selectedRow = DataGridView1.SelectedRows

        dbCommand.CommandText = "DELETE FROM UserCriteria WHERE RowID =" & selectedRow
        If dbConnection.State = ConnectionState.Closed Then
            dbConnection.Open()
        End If

        dbCommand.Connection = dbConnection
        rdr2 = dbCommand.ExecuteReader
        dbCommand.ExecuteNonQuery()


        rdr2.Close()

        '''Must select entire row to delete
        'DataGridView1.Rows.Remove(DataGridView1.Rows(DataGridView1.SelectedCells.Item(0).RowIndex))

        '''allows you to select on cell in the row to delete entire row
        For Each oneCell As DataGridViewCell In DataGridView1.SelectedCells
            If oneCell.Selected Then
                DataGridView1.Rows.RemoveAt(oneCell.RowIndex)
            End If
        Next



    Catch ex As Exception
        MsgBox(ex.Message)
    Finally
        dbConnection.Close()
    End Try
End Function

InformationsquelleAutor MaylorTaylor | 2013-03-27

Schreibe einen Kommentar