Подтвердить что ты не робот

Восстановление несохраненных SQL-запросов Сценарии в Oracle SQL Developer

Я знаю, как это сделать в SQL Server благодаря этому умному фрагменту кода

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

ИСТОЧНИК: Восстановить сценарии несохраненных SQL-запросов

Есть ли способ сделать это в Oracle SQL Developer?

4b9b3361

Ответ 1

Если у вас есть привилегии, то:

SELECT * FROM v$sql

Если нет, нажмите F8, чтобы открыть список ранее выполненных запросов.

Ответ 2

Это сохранил мой прикладок несколько раз.

Привет, ребята, это проблема, когда вы теряете несохраненный код. Примерно месяц Я работал над большой процедурой и забыл сохранить код в SVN. Если вы прочтете это и вспомните, есть такой несохраненный код, немедленно зафиксируйте это!:) Потому что все может случиться с вашим test db. ОК. вам повезло, если вы использовали Oracle SQL Developer, потому что эта программа имеет отличную функцию - она ​​сохраняет ваш код в своем sql history, несмотря на то, что вы съели большую часть своей оперативной памяти. Откройте файл explorer и найдите эту папку:

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

Вы найдете много XML файлов, и если вам дважды повезет, вы найдете ваш потерянный код. Это замечательно.:). Если вы используете другую программу, попробуйте найти эту функцию, и, возможно, это поможет вам. Мои соболезнования если этот пост вам не поможет, попробуйте найти что-то хорошее среди следующего: 1) снова напишите свой код, и он будет лучше, чем прежде чем вы это сделаете один раз 2) зафиксируйте свой код, чтобы вы не столкнулись с таким проблема в будущем

Ответ 3

Это использует историю SQLDeveloper, как в ответе Мэтта, но если вы хотите найти файлы истории для определенных фрагментов запроса, которые вы помните, они расположены как .xml файлы в /home/username/.sqldeveloper/SqlHistory. Оттуда введите:

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

(где -mtime -1 означает не раньше, чем один день назад).

Ответ 4

Вы также можете попробовать, чтобы получить несохраненный SQL.

Просмотp > История SQL, например, посмотрите это изображение: введите описание изображения здесь