2014-11-11 15 views
11

Ich weiß, wie dieser Server dank dieser cleveren Stück Code in SQL tunRecover

Use <database> 
SELECT execquery.last_execution_time AS [Date Time], execsql.text AS [Script] 
FROM sys.dm_exec_query_stats AS execquery 
CROSS APPLY sys.dm_exec_sql_text(execquery.sql_handle) AS execsql 
ORDER BY execquery.last_execution_time DESC 

QUELLE: Recover unsaved SQL query scripts

Gibt es eine Möglichkeit, dies in Oracle SQL Developer zu tun?

+2

'select * from v $ sql' –

+0

' ORA-00942: Tabelle oder Sicht nicht 00942 existiert.00000 - „Tabelle oder Sicht ist nicht vorhanden“ * Ursache: * Aktion: Fehler in Zeile: 1 Spalte: 14' – Matt

+3

Die scheinbar sind Sie über die erforderlichen Privilegien –

Antwort

27

Wenn Sie die Berechtigungen haben dann:

SELECT * FROM v$sql 

Wenn nicht, dann F8 drücken, um eine Liste aufzurufen zuvor Abfragen lief.

17

This hat meinen Hintern mehrmals gespeichert.

Hallo Leute, es ist wirklich ein Problem, wenn Sie nicht gespeicherten Code verlieren. Für ungefähr einen Monat habe ich an einer großen Prozedur gearbeitet und vergessen, den Code in SVN zu speichern. Wenn Sie dies lesen und sich erinnern, haben Sie einen solchen ungesicherten Code, begehen Sie sofort! :) Da könnte alles mit deiner Testdb passieren. OK. Sie haben Glück, wenn Sie Oracle SQL Developer, verwenden, weil dieses Programm eine großartige Funktion hat - es speichert Ihren Code in seiner SQL-Geschichte trotz Essen eine große Party von Ihrem RAM. Öffnen Sie Ihre Datei Explorer und suchen Sie diesen Ordner:

C: \ Users \% username% \ AppData \ Roaming \ SQL Developer \ SqlHistory

Sie werden eine Menge von XML-Dateien finden, und wenn Sie zweimal glücklich, finden Sie Ihren verlorenen Code. Es ist wunderbar. :). Wenn Sie ein anderes Programm verwenden, versuchen Sie , Funktion wie dieses zu finden, und vielleicht hilft es Ihnen. Mein Beileid Wenn Ihnen dieser Beitrag nicht weiterhilft, versuchen Sie auf jeden Fall, etwas Gutes zu finden unter den nächsten: 1) schreiben Sie Ihren Code noch einmal, und es wird besser sein als bevor Sie es einmal getan haben 2) commit your Code, so dass Sie nicht so Problem in Zukunft konfrontiert werden

+0

Dieser rettete mir heute eine Menge Redo-Arbeit. Vielen Dank! –

3

Diese sqldeveloper Geschichte verwendet, wie in Matts Antwort, aber wenn Sie durch die History-Dateien für bestimmte Abfragefragmente erinnern Sie suchen möchten, sind sie als .xml-Dateien in /home/username/.sqldeveloper/SqlHistory. Von dort eingeben:

find -type f -mtime -1 -print0 | xargs -0 grep -l <text>

(wo -mtime -1 bedeutet nicht früher als einen Tag vor).

1

Sie können auch versuchen, so dass Sie die ungespeicherte SQL erhalten können.

Ansicht> History SQL zum Beispiel aussehen dieses Bild: enter image description here

Verwandte Themen