Hallo zusammen,
ich habe mir in VB ein kleines Corona Kontakttagebuch gebaut.
Die ermittelten Kontakte werden in einer ACCDB gesichert.
Beim Verlassen der Anwendung möchte ich nun die Kontakthistorie der letzten 14-Tage löschen automatisch löschen lassen.
Irgendwas mach ich beim Löschen aber falsch und ich komm grad nicht drauf, woran es liegt - vielleicht könnt ihr mir weiterhelfen.
Wenn ich in der Accessspalte "DATUM" die Werte 12.11.2020
11.11.2020
10.11.2020
09.11.2020
08.11.2020
07.11.2020
06.11.2020
05.11.2020
04.11.2020
03.11.2020
02.11.2020
01.11.2020
31.10.2020
30.10.2020
29.10.2020
28.10.2020
27.10.2020
26.10.2020
25.10.2020
24.10.2020
23.10.2020
eintrage, werden nur die roten Werte gelöscht.
Ich hätte aber vorausgesetzt, dass alles seit dem 28.10.2020 (grün) gelöscht wird, da älter als 14 Tage.
Habt ihr vielleicht eine Idee, woran das liegen kann?
Vielen Dank im Voraus.
ich habe mir in VB ein kleines Corona Kontakttagebuch gebaut.
Die ermittelten Kontakte werden in einer ACCDB gesichert.
Beim Verlassen der Anwendung möchte ich nun die Kontakthistorie der letzten 14-Tage löschen automatisch löschen lassen.
Irgendwas mach ich beim Löschen aber falsch und ich komm grad nicht drauf, woran es liegt - vielleicht könnt ihr mir weiterhelfen.
Wenn ich in der Accessspalte "DATUM" die Werte 12.11.2020
11.11.2020
10.11.2020
09.11.2020
08.11.2020
07.11.2020
06.11.2020
05.11.2020
04.11.2020
03.11.2020
02.11.2020
01.11.2020
31.10.2020
30.10.2020
29.10.2020
28.10.2020
27.10.2020
26.10.2020
25.10.2020
24.10.2020
23.10.2020
eintrage, werden nur die roten Werte gelöscht.
Ich hätte aber vorausgesetzt, dass alles seit dem 28.10.2020 (grün) gelöscht wird, da älter als 14 Tage.
VB.NET-Quellcode
-
- Function GetSQLDate(dtDate As Date) As String
- 'GetSQLDate = Format(dtDate, "\#dd\.MM\.yyyy\#")
- GetSQLDate = Format(dtDate, "\#yyyy-MM-dd\#")
- 'GetSQLDate = Format(dtDate, "\#dd-MM-yyyy\#")
- End Function
- Sub KontakteLoeschen()
- 'Erstellen des SQL-Befehls mit Parameter
- Dim strSQLString As String = "DELETE FROM " & strTabellenName &
- " WHERE DATUM >= " & GetSQLDate((DateAdd(DateInterval.Day, -14, Date.Now.Date)))
- Debug.Print(strSQLString)
- 'Aufbau der benötigten Variablen für die Connection
- Dim con As New OleDb.OleDbConnection(strConnectionsString)
- Dim cmd As New OleDb.OleDbCommand(strSQLString, con)
- 'Öffnen der Verbindung
- con.Open()
- Try
- 'Ausführen des SQL-Befehls
- cmd.ExecuteNonQuery()
- Catch ex As Exception
- MessageBox.Show(text:=ex.Message,
- caption:="Fehler 216: Fehler bei der Übermittlung der Daten",
- buttons:=MessageBoxButtons.OK,
- icon:=MessageBoxIcon.Warning)
- End Try
- 'schließen der Verbindung
- con.Close()
- End Sub
Habt ihr vielleicht eine Idee, woran das liegen kann?
Vielen Dank im Voraus.