Gelöscht Zeilen aus Datatable aus SQLite DB löschen

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von XBrainBug.

    Gelöscht Zeilen aus Datatable aus SQLite DB löschen

    Hallo,

    ​ich versuche eine SQLite DB mit Daten aus einer Datatable abzugleichen. Also das lesen und updaten der Daten aus der DB und dann das zurückschreiben klappt wunderbar aber das löschen will nicht klappen. Wenn ich es über eine Datagridview mache, geht auch das löschen aber wenn ich die Zeilen per Befehl aus dem Datatable lösche, wird beim Abgleich nicht die Zeile aus der DB gelöscht. Wenn ich den CommandBuilder abfragen, existiert ein DELETE command. Und ich bin sicher das die Zeile aus dem Datatable gelöscht wurde!

    Anstatt remove habe ich auch schon delete probiert aber da habe ich Probleme die richtig Zeile zu identifizieren zum Löschen.

    Hier mein Code:

    VB.NET-Quellcode

    1. Sub verändern()
    2. GetData1("SELECT * FROM ru_daten", "ru_daten")
    3. Dim row() As DataRow
    4. row = DataSet.Tables("ru_daten").Select("id = 20")
    5. row(0)("name") = "Test"
    6. DataAdapterDaten.Update(DataSet, "ru_daten")
    7. End Sub
    8. Sub löschen()
    9. Dim row() As DataRow
    10. row = DataSet.Tables("ru_daten").Select("name = 'Test'")
    11. DataSet.Tables("ru_daten").Rows.Remove(row(0))
    12. DataAdapterDaten.Update(DataSet, "ru_daten")
    13. End Sub
    14. Sub GetData1(ByVal selectCommand As String, ByVal Tabelle As String)
    15. Try
    16. Dim connectionString As String = "Data Source=Base.s3db"
    17. DataAdapterDaten = New SQLiteDataAdapter(selectCommand, connectionString)
    18. commandBuilderDaten = New SQLiteCommandBuilder(DataAdapterDaten)
    19. DataAdapterDaten.Fill(DataSet, Tabelle)
    20. bindingSourceDaten.DataSource = DataSet.Tables(Tabelle)
    21. Catch ex As SQLiteException
    22. MessageBox.Show("")
    23. End Try
    24. End Sub