Hallo,
ich möchte ein Datum aus einem DataSet in eine AccessDB speichern.
Ich arbeite mit der Klasse aus dem Thema Dataset->Db von @ErfinderDesRades und habe eigentlich alles gemacht wie es da stand, d.h. TabelAdapter runterschmeißen und mit der OleDbPersistance Klasse Laden und Speichern.
Das funktioniert bei Zahlen und Text, aber ein Datum kann ich nicht abspeichern. Wenn ich ein Datum in die AccessDB eintrage, dann wird es korrekt geladen und auch angezeigt, nur zurück Speichern geht halt nicht
Es kommt folgender Fehler:
Spoiler anzeigen
Code zum Speichern aus der OleDbPersistance Klasse:
Spoiler anzeigen
Der Fehler tritt in der Zeile
Ich möchte das Datum gerne im Format: 22.11.2015 17:14:15 abspeichern. Dazu habe ich in Access das Datumsformat auf "Standarddatum" gestellt und im DataSet wurde es beim Erstellen richtigerweise auf DateTime gestellt.
Kann mir bitte jemand sagen was ich ändern muss, um mit der Speichern Methode auch Datumswerte richtig zu speichern? Danke
Nachtrag: Wenn der Fehler kommt, dann wird die Verbindung zur DB nicht mehr geschlossen. Ich denke es hat einen Grund das kein TryCatchFinally da ist, nur das die Verbindung offen bleibt, ist auch nicht so dolle. Wie kann ich das fixen?
ich möchte ein Datum aus einem DataSet in eine AccessDB speichern.
Ich arbeite mit der Klasse aus dem Thema Dataset->Db von @ErfinderDesRades und habe eigentlich alles gemacht wie es da stand, d.h. TabelAdapter runterschmeißen und mit der OleDbPersistance Klasse Laden und Speichern.
Das funktioniert bei Zahlen und Text, aber ein Datum kann ich nicht abspeichern. Wenn ich ein Datum in die AccessDB eintrage, dann wird es korrekt geladen und auch angezeigt, nur zurück Speichern geht halt nicht
Es kommt folgender Fehler:
Ein Ausnahmefehler des Typs "System.Data.OleDb.OleDbException" ist in System.Data.dll aufgetreten.
Zusätzliche Informationen: Syntaxfehler in der INSERT INTO-Anweisung.
Code zum Speichern aus der OleDbPersistance Klasse:
VB.NET-Quellcode
- Public Sub Save()
- _Con.Open()
- For Each tb In _RankedTables
- Dim rows = tb.Select("", "", DataViewRowState.Added Or DataViewRowState.ModifiedCurrent)
- _Adapters(tb).Update(rows) ' first send Inserts and Updates
- Next
- Dim skipSubOrderedRowsConfig = New _AcceptruleCascadeConfig(_dts)
- For Each tb In _RankedTables
- Dim n = _Adapters(tb).Update(tb) ' send the remaining Deletes, skipping Cascade-Deleted-Rows, which will be deleted by Db itself
- Next
- skipSubOrderedRowsConfig.Restore()
- _Con.Close()
- End Sub
Der Fehler tritt in der Zeile
_Adapters(tb).Update(rows)
auf.Ich möchte das Datum gerne im Format: 22.11.2015 17:14:15 abspeichern. Dazu habe ich in Access das Datumsformat auf "Standarddatum" gestellt und im DataSet wurde es beim Erstellen richtigerweise auf DateTime gestellt.
Kann mir bitte jemand sagen was ich ändern muss, um mit der Speichern Methode auch Datumswerte richtig zu speichern? Danke
Nachtrag: Wenn der Fehler kommt, dann wird die Verbindung zur DB nicht mehr geschlossen. Ich denke es hat einen Grund das kein TryCatchFinally da ist, nur das die Verbindung offen bleibt, ist auch nicht so dolle. Wie kann ich das fixen?
Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „rdmguy“ ()