-- Script zur Korrektur der Worklog Zeitstempel -- Die alte C++ App hat lokale Zeit gespeichert, aber als UTC interpretiert -- Wir müssen die Zeitstempel korrigieren, indem wir sie als lokale Zeit interpretieren -- WICHTIG: Erstelle erst ein Backup! -- mysqldump -u root -p stechuhr2 worklog > worklog_backup_$(date +%Y%m%d_%H%M%S).sql -- Prüfe aktuelle Daten (erste 10 Einträge) SELECT id, user_id, state, tstamp AS tstamp_alt, CONVERT_TZ(tstamp, '+00:00', '+01:00') AS tstamp_neu_mez, CONVERT_TZ(tstamp, '+00:00', '+02:00') AS tstamp_neu_mesz FROM worklog ORDER BY id LIMIT 10; -- INFO: Welche Zeitzone soll verwendet werden? -- MEZ (Winterzeit) = UTC+1 = '+01:00' -- MESZ (Sommerzeit) = UTC+2 = '+02:00' -- OPTION A: Alle Timestamps als MEZ (UTC+1) interpretieren -- UPDATE worklog SET tstamp = CONVERT_TZ(tstamp, '+00:00', '+01:00'); -- OPTION B: Alle Timestamps als MESZ (UTC+2) interpretieren -- UPDATE worklog SET tstamp = CONVERT_TZ(tstamp, '+00:00', '+02:00'); -- OPTION C: Intelligente Korrektur basierend auf Sommerzeit/Winterzeit -- (Komplexer, aber genauer - berücksichtigt die tatsächliche Zeitzone zum Zeitpunkt der Speicherung) SELECT '⚠️ WICHTIG: Prüfe die Ausgabe oben und wähle die passende UPDATE-Anweisung!' AS Warnung; SELECT 'Die C++ App hat wahrscheinlich lokale Zeit (MEZ/MESZ) gespeichert, aber MySQL hat sie als UTC interpretiert.' AS Info; SELECT 'Wenn die Zeiten im Sommer (März-Oktober) 2h früher sind, nutze OPTION B (MESZ = +02:00)' AS Tipp1; SELECT 'Wenn die Zeiten im Winter (November-Februar) 1h früher sind, nutze OPTION A (MEZ = +01:00)' AS Tipp2;