Podczas edytowania niektórych rekordów w mojej bazie danych PostgreSQL przy użyciu sql w terminalu (w systemie Ubuntu Lucid), dokonałem błędnej aktualizacji.Jak przywrócić aktualizację w PostgreSQL
Zamiast -
update mytable set start_time='13:06:00' where id=123;
Wpisałem -
update mytable set start_time='13:06:00';
Tak, wszystkie rekordy są teraz posiadające tę samą wartość start_time.
Czy istnieje sposób na cofnięcie tej zmiany? W tabeli znajduje się około 500 rekordów i nie wiem, jaka była wartość czasu rozpoczęcia dla każdego rekordu:
Czy utracono ją na zawsze?
Dla przyszłości: nie należy uruchamiać z włączonym autocommitem. –
wyciągnięte wnioski! zawsze rób kopie zapasowe przed aktualizacjami, tylko pamiętaj! jeśli włączono funkcję PITR (Point-In-Time Recovery), może to być możliwe. – jerjer