-- Ersetze Worklog-Einträge für Donnerstag, 16.10.2025 -- Lokale Zeit (MESZ = UTC+2): 08:02:35, 12:07:53, 13:06:14, 16:45:02, 17:00:00, 17:13:24 -- UTC-Zeit (für DB): 06:02:35, 10:07:53, 11:06:14, 14:45:02, 15:00:00, 15:13:24 -- Schritt 1: Lösche alte Einträge für 16.10.2025 -- Wegen Foreign Key Constraints müssen wir in der richtigen Reihenfolge löschen: -- Erst die Einträge, die auf andere verweisen (stop work, stop pause) -- Dann die Einträge, die referenziert werden (start pause, start work) -- 1a. Lösche stop work und stop pause Einträge DELETE FROM worklog WHERE user_id = 1 AND DATE(tstamp) = '2025-10-16' AND state IN ('stop work', 'stop pause'); -- 1b. Lösche start pause und start work Einträge DELETE FROM worklog WHERE user_id = 1 AND DATE(tstamp) = '2025-10-16' AND state IN ('start pause', 'start work'); -- Schritt 2: Füge neue Einträge ein -- Variablen für die IDs SET @start_work_id = NULL; SET @start_pause1_id = NULL; SET @start_pause2_id = NULL; -- 1. start work (06:02:35 UTC = 08:02:35 lokal) INSERT INTO worklog (user_id, state, tstamp, relatedTo_id, version) VALUES (1, 'start work', '2025-10-16 06:02:35', NULL, 0); SET @start_work_id = LAST_INSERT_ID(); -- 2. start pause (10:07:53 UTC = 12:07:53 lokal) → relatedTo = start work INSERT INTO worklog (user_id, state, tstamp, relatedTo_id, version) VALUES (1, 'start pause', '2025-10-16 10:07:53', @start_work_id, 0); SET @start_pause1_id = LAST_INSERT_ID(); -- 3. stop pause (11:06:14 UTC = 13:06:14 lokal) → relatedTo = start pause INSERT INTO worklog (user_id, state, tstamp, relatedTo_id, version) VALUES (1, 'stop pause', '2025-10-16 11:06:14', @start_pause1_id, 0); -- 4. start pause (14:45:02 UTC = 16:45:02 lokal) → relatedTo = start work INSERT INTO worklog (user_id, state, tstamp, relatedTo_id, version) VALUES (1, 'start pause', '2025-10-16 14:45:02', @start_work_id, 0); SET @start_pause2_id = LAST_INSERT_ID(); -- 5. stop pause (15:00:00 UTC = 17:00:00 lokal) → relatedTo = start pause INSERT INTO worklog (user_id, state, tstamp, relatedTo_id, version) VALUES (1, 'stop pause', '2025-10-16 15:00:00', @start_pause2_id, 0); -- 6. stop work (15:13:24 UTC = 17:13:24 lokal) → relatedTo = start work INSERT INTO worklog (user_id, state, tstamp, relatedTo_id, version) VALUES (1, 'stop work', '2025-10-16 15:13:24', @start_work_id, 0); SELECT 'Worklog-Einträge für 16.10.2025 erfolgreich ersetzt' AS Status;