# Access Datenbank aus Datagrid aktualisieren



## werner_sg (5. Juli 2021)

Hallo

ich habe ein Datagrid welches je nach Auswahl einer Combobox mit Datenbefüllt wird


```
If ComboBox1.Text = "alle Buchungen" Then
            dbdt = New DataTable
            Try
                Sql = "SELECT BuchungsNr AS Buchungsnummer, Kunde AS Mieter, Fahrzeugnummer, Modell, Mietbegin AS Abholung, Mietende AS Abgabe, Mietdauer AS Tage, Abholort, Abgabeort, TOTAL FROM tblreservierung "
                conn.Open()
                With dbcmd
                    .CommandText = Sql
                    .Connection = conn
                End With

                dbda.SelectCommand = dbcmd
                dbda.Fill(dbdt)
                DataGridView1.DataSource = dbdt
                Dim TotalMoto = 0
                Dim TotalSales = 0
                For Each Row As DataRow In dbdt.Rows
                    TotalSales += Val(Row.Item("TOTAL"))
                Next
                Label4.Text = TotalSales
            Catch ex As Exception
                MsgBox(ex.Message)
            Finally
                conn.Close()
            End Try
        ElseIf ComboBox1.Text = "Buchungen bezahlt und nicht abgeholt" Then
            dbdt = New DataTable
            Try
                Sql = "SELECT BuchungsNr AS Buchungsnummer, Kunde AS Mieter, Fahrzeugnummer, Modell, Mietbegin AS Abholung, Mietende AS Abgabe, Mietdauer AS Tage, Abholort, Abgabeort, TOTAL FROM tblreservierung where BUCHUNG_BEZAHLT='ja' AND KFZ_ABGEHOLT='nein' AND KFZ_ABGEGEBEN='nein'"
                conn.Open()
                With dbcmd
                    .CommandText = Sql
                    .Connection = conn
                End With

                dbda.SelectCommand = dbcmd
                dbda.Fill(dbdt)
                DataGridView1.DataSource = dbdt
                Dim TotalMoto = 0
                Dim TotalSales = 0
                For Each Row As DataRow In dbdt.Rows
                    TotalSales += Val(Row.Item("TOTAL"))
                Next
                Label4.Text = TotalSales
            Catch ex As Exception
                MsgBox(ex.Message)
            Finally
                conn.Close()
            End Try

        ElseIf ComboBox1.Text = "Buchungen abgeholt" Then
usw.....
```

Dazu habe ich mir jetzt noch einen Button eingebaut in welcher ich im Datagrid vorgenommene Änderungen direkt in die Access Tabelle zurück schreiben kann


```
Private Sub Btnupdate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btnupdate.Click


        dbcmd.UpdatedRowSource(dbdt)   // Fehler bei UpdateRowSource

    End Sub
```

über Google hatte ich einiges gefunden was aber nicht passte und öfters der Hinweis auf diese update funktion unter anderem da.Update(ds)
was auch einen Fehler ergibt als Lösung wurde mir vom Studio das UpdateRowSource vorgeschlagen
Da habe ich dann den Fehler:

Fehler bei der Überladungsauflösung, da keine zugreifbare UpdateRowSource diese Anzahl von Argumenten Unterstützt

Was fehlt oder wo ist mein Fehler


----------

