Ich habe eine Webanwendung und ich bezweifle, dass einige andere Datensätze manuell gelöscht haben. Auf Nachfrage gibt niemand die Fehler zu. Wie finde ich heraus, zu welcher Zeit diese Datensätze gelöscht wurden? Ist es möglich, die Historie von Löschabfragen zu erhalten?Wie bekomme ich die neuesten Abfragen in Oracle DB
-1
A
Antwort
3
Wenn Sie Zugriff auf v $ view haben, können Sie die folgende Abfrage verwenden, um es zu erhalten. Es enthält die Uhrzeit als Spalte FIRST_LOAD_TIME.
select *
from v$sql v
where upper(sql_text) like '%DELETE%';
1
Wenn Rückblende Abfrage für die Datenbank aktiviert ist (versuchen Sie es mit select * from table as of timestamp sysdate - 1
), dann kann es möglich sein, die genaue Zeit zu bestimmen, die Datensätze gelöscht wurden. Verwenden Sie die Klausel as of timestamp
, und passen Sie den Zeitstempel nach Bedarf an, um auf ein Fenster zu schließen, in dem die Datensätze noch vorhanden und nicht mehr vorhanden waren.
Zum Beispiel
select *
from table
as of timestamp to_date('21102016 09:00:00', 'DDMMYYYY HH24:MI:SS')
where id = XXX; -- indicates record still exists
select *
from table
as of timestamp to_date('21102016 09:00:10', 'DDMMYYYY HH24:MI:SS')
where id = XXX; -- indicates record does not exist
-- conclusion: record was deleted in this 10 second window
Verwandte Themen
- 1. Wie bekomme ich den neuesten Datensatz von postgresql db?
- 2. die MySQL-Abfragen db
- 3. Wie Generieren PostgreSQL-Abfragen von Oracle DB-Sicherungsdatei
- 4. Wie bekomme ich die Zeilenanzahl in JDBC?
- 5. Wie bekomme ich die neuesten/neuen Nachrichten von Telegram API
- 6. Wie bekomme ich immer die neuesten aktuellen Koordinaten
- 7. Wie bekomme ich die neuesten Daten aus der Tabelle
- 8. Oracle die neuesten Werte nach Datum auswählen
- 9. SQL Abfragen in Oracle
- 10. Wie kann ich Abfragen sehen, die gegen Oracle ausgeführt werden?
- 11. Wie bekomme ich die Block-Header-Größe in Oracle?
- 12. Die Oracle 10G SQL DB
- 13. Verwenden von POJO Datenquelle und Abfragen von Oracle DB
- 14. Oracle-Abfragen dynamisch in MSSQL-Abfragen konvertieren
- 15. JDBC: Wie kann ich in Oracle nach Zeit abfragen?
- 16. Wie bekomme ich den neuesten SVN HEAD in git-svn?
- 17. Wie Cross-DB-Abfragen in HSQL DB ausgelöst werden?
- 18. Wie führe ich Abfragen auf DB-Verbindung in Rails aus?
- 19. Wie bekomme ich ein Array von DB
- 20. Wie bekomme ich gute Ergebnisse von DB
- 21. Raw DB Abfragen in Rails
- 22. ORACLE 10g: Wie bekomme ich alle Verzeichnisse
- 23. Wie bekomme ich das Datenbankschema einer versteckten DB?
- 24. Oracle - Flyway DB Referenzdaten
- 25. JavaMail IMAP. Ich bekomme nicht die neuesten Mails
- 26. Wie sollte ich diesen 3 SQL-Abfragen in Oracle beitreten?
- 27. Wie bekomme ich String nach Charakter Oracle
- 28. Holen Sie sich die neuesten Datensätze jeder Nummer in ORACLE
- 29. Wie bekomme ich den Komponisten, um die Versionsnummern auf die neuesten in composer.json verfügbaren zu aktualisieren?
- 30. Oracle: Wie bekomme ich die Sequenznummer der Zeile gerade eingefügt?
Sie wollen würde Log Miner verwenden, um durch die archivierten Protokolle zu gehen, um die Delete-Anweisungen zu finden, die Sie interessiert sind. Das kann sehr zeitaufwendig sein, wenn Sie nicht sicher sind, wenn die Löschen ist passiert. Es ist möglich, dass sie immer noch in v $ sql zwischengespeichert werden, aber das ist nicht sicher. Und wenn die Abfragen keine Literale verwenden, würden Sie die Bindungswerte, die bei der Ausführung der Abfragen verwendet wurden, nicht kennen. –