Automatisch löschen um 0 Uhr

Hallo,

ich habe eine Tabelle, in der Daten für einen Tag abgelegt werden sollen. Bisher habe ich das löschen von Daten des Vortages mit einer Regel implementiert, mit der bei jedem Insert geprüft wird, ob es noch Daten gibt, die vom Vortag sind:

CREATE OR REPLACE RULE _delete_24h_data AS
    ON INSERT TO gps_data DO  DELETE FROM gps_data
  WHERE gps_data.inserttimestamp < (now() - '24:00:00'::interval);

Da gibt es aber doch bestimmt eine Möglichkeit, die Daten direkt um 00:00 zu löschen, oder? Gibt es dafür eine Standardfunktionalität oder hat jemand schonmal so etwas realisiert?

MfG,
Dackmo

CRON. Wenn es Dir nur darum geht, die Daten ‘nicht zu sehen’, dann ein VIEW.

Andreas

Klar gehts mit nem cronjob. Ich dachte aber, dass es evtl. direkt eine Funktionalität in pg gibt, mit der man das regeln kann?!

Nö. PostgreSQL ist eine Datenbank und für zeitgesteuerte Aufgaben gibt es Cron/Geplante Tasks.

Oder du baust deine SELECTS halt so auf, dass sie Datensätze vor 0:00 Uhr ignorieren und löscht die irgendwann wenn du Zeit und Lust dazu hast…

cu tb.

OK, dann regle ich das mit nem Cronjob. Vielen Dank für die schnelle Hilfe!!!

CU,
Dackmo