Update wird nicht ausgeführt.

  • VB.NET

Es gibt 1 Antwort in diesem Thema. Der letzte Beitrag () ist von Papa Echo.

    Update wird nicht ausgeführt.

    Hallo,
    aus einer Access 2003 Datenbank lese ich Daten in ein Dataset ein. Dann möchte ich ein paar Zeilen in der Tabelle aktualisieren. Der Code wird ohne Fehler ausgeführt, aber in der Datenbank sind keine Änderungen zu sehen. Auch am Datum der .mdb Datei ändert sich nichts. Leider verstehe ich nicht, warum das so ist.


    Dies ist mein Code (Ausschnitt):

    Quellcode

    1. Dim j, z, intID As Int32
    2. Dim conn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=MeineDB.mdb;")
    3. Dim da As New OleDbDataAdapter(), ds As New DataSet()
    4. conn.Open()
    5. da.SelectCommand = New OleDbCommand("SELECT ID FROM tbl1 ORDER BY ID", conn)
    6. da.Fill(ds, "Tabelle1")
    7. conn.Close()
    8. ...
    9. ' Hier wird ein Datensatz gesucht, der einige Kriterien erfüllt.
    10. ...
    11. ds.Tables("Tabelle1").Rows(z).Item("ID") = j
    12. da.UpdateCommand = New OleDbCommand("UPDATE tbl1 SET ID =" & Str(j) & " WHERE ID = " & intID.ToString, conn)
    13. da.Update(ds, "Tabelle1")
    14. ...
    15. da.Dispose()
    16. ds.Clear()
    Ich habe gerade zufällig herausgefunden, dass ein ds.AcceptChanges() ein nachfolgendes Update verhindert. Eine solche Zeile ds.AcceptChanges() ist in meinem Code (Zeile 12) vor dem Update und ich habe sie mal auskommentiert und nun läuft das Update. Aber ich habe leider noch nicht verstanden, warum das so ist. Vielleicht kann mir das mal jemand erklären.