Hallo,
ich schaffe es nicht geänderte Daten in die Datenbank zurückzuschreiben.
Mir ist aufgefallen, dass ich auch keine ID in der DataTable habe.
Hier der Code zum erstellender DB:
Hiermit Trage ich die Daten erstmals ein:
und lese mit:
Aber wie gesagt, ich habe keine ID im DataTable
Das speichern hatte ich zuletzt versucht mit:
Könnt Ihr meinen Fehler erkennen?
Danke vorab für jede Hilfe
Gruß Christian
ich schaffe es nicht geänderte Daten in die Datenbank zurückzuschreiben.
Mir ist aufgefallen, dass ich auch keine ID in der DataTable habe.
Hier der Code zum erstellender DB:
Quellcode
- Sub sqlite_Create_Tables()
- ' Diese Sub erstellt in der in der Variablen SQLDB übergebenen
- ' Datenbank die Tabellen.
- ' Die Sub wird durch SQLight_Neu aufgerufen.
- Dim SQLconnect As New SQLite.SQLiteConnection()
- Dim SQLcommand As SQLiteCommand
- SQLconnect.ConnectionString = "Data Source=" & SQLDB & ";"
- SQLconnect.Open()
- SQLcommand = SQLconnect.CreateCommand
- . . .
- SQLcommand.CommandText = "CREATE TABLE Optionen(Inhalt TEXT, Wert1" & _
- "TEXT, Wert2 TEXT, Blob BLOB);"
- SQLcommand.ExecuteNonQuery()
- . . .
- 'verwendete Resourcen wieder freigeben
- SQLcommand.Dispose()
- 'Datenbankverbindung beenden
- SQLconnect.Close()
- End Sub
Hiermit Trage ich die Daten erstmals ein:
Quellcode
- Public Sub SQLight_Opt(ByVal SQLArr As Object)
- ' schreibt die Daten in die Tabelle Optionen
- Dim SQLconnect As New SQLite.SQLiteConnection()
- Dim SQLcommand As SQLiteCommand
- On Error GoTo Fehler
- SQLconnect.ConnectionString = "Data Source=" & SQLDB & ";"
- SQLconnect.Open()
- SQLcommand = SQLconnect.CreateCommand
- For i As Long = 0 To UBound(SQLArr)
- SQLcommand = New SQLiteCommand("INSERT INTO Optionen (Inhalt," & _
- "Wert1) VALUES ('" & SQLArr(i, 0).ToString _
- & "', '" & SQLArr(i, 1).ToString & "')", _
- SQLconnect) 'Comand festlegen
- SQLcommand.ExecuteNonQuery() 'Command ausführen
- Next
- SQLcommand.Dispose()
- SQLconnect.Close()
- Exit Sub
- Fehler:
- MsgBox(Err.Description)
- SQLcommand.Dispose()
- SQLconnect.Close()
- End Sub
und lese mit:
Quellcode
- Sub sql_LV_einlesen()
- 'liest eine SQLight Datenbank in ein DataSet.
- 'Wird aufgerufen von:
- ' - d86_NeuDB_Einlesen()
- ' - sql_LV_Oeffnen()
- Dim Conn As New SQLiteConnection("Data Source=" & SQLDB & ";Version=3")
- 'SQLight DB auslesen
- Conn.Open() 'Connection öffnen
- ' DataSet vorbereiten
- bamDS = New DataSet("bamDS")
- Dim Cmd As New SQLiteCommand
- Cmd.Connection = Conn
- . . .
- ' Tabelle "Optionen" einlesen
- Cmd.CommandText = "SELECT * FROM Optionen"
- Dim myAdapter_o As New SQLiteDataAdapter
- myAdapter_o.SelectCommand = Cmd
- myAdapter_o.MissingSchemaAction = MissingSchemaAction.AddWithKey
- myAdapter_o.FillSchema(bamDS, SchemaType.Source, "Optionen")
- myAdapter_o.Fill(bamDS, "Optionen")
- . . .
- 'verwendete Resourcen wieder freigeben
- Conn.Dispose()
- 'Datenbankverbindung beenden
- Conn.Close()
- End Sub
Aber wie gesagt, ich habe keine ID im DataTable
Das speichern hatte ich zuletzt versucht mit:
Könnt Ihr meinen Fehler erkennen?
Danke vorab für jede Hilfe
Gruß Christian