在Oracle SQL Developer中恢复未保存的SQL查询脚本

wmvff8tz  于 2022-11-03  发布在  Oracle
关注(0)|答案(6)|浏览(435)

我知道如何在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

来源:Recover unsaved SQL query scripts
在Oracle SQL Developer中是否有办法做到这一点?

lymgl2op

lymgl2op1#

This救了我好几次屁股。
当您丢失未保存的代码时,这确实是一个问题。大约一个月来,我一直在处理一个大过程,忘记将代码保存在SVN中。如果您阅读本文并记得有这样的未保存代码,请立即提交它!:)因为您的测试数据库可能会发生任何情况。好的。如果您使用的是Oracle SQL Developer,您就很幸运了,因为此程序有一个很棒的特性-它会将您的代码保存在其sql历史记录中,而不管它是否占用了您的大量RAM。打开文件资源管理器并找到以下文件夹:
C:\用户%用户名%\应用程序数据\漫游\SQL Developer\SQL历史记录
你会找到很多XML文件,如果你运气好的话,你会找到丢失的代码。这太棒了。:)。如果你正在使用其他程序,试着找到这样的功能,也许它会帮助你。如果这篇文章对你没有帮助,我深表同情,无论如何,试着在下面的文章中找到一些好的东西:1)重新编写代码,它会比以前更好,因为你做了一次2)提交你的代码,所以你不会在未来面临这样的问题

weylhg0b

weylhg0b2#

如果您有权限,则:

SELECT * FROM v$sql

如果没有,请按F8键调出以前运行的查询列表。

2hh7jdfx

2hh7jdfx3#

您也可以尝试,这样您就可以获得未保存的SQL。

View〉SQL History,例如,请看以下图片:

m1m5dgzv

m1m5dgzv4#

这是使用SQLDeveloper的历史记录,就像Matt的答案一样,但是如果您想在历史记录文件中搜索您记得的特定查询片段,它们作为.xml文件位于/home/username/.sqldeveloper/SqlHistory中。
find -type f -mtime -1 -print0 | xargs -0 grep -l <text>
(其中-mtime -1表示不早于一天前)。

jc3wubiy

jc3wubiy5#

通过View〉SQL History或者通过按F8键都是一个很好的方法,它可以让你搜索内容或者连接数据库,真是一个很好的实现!
SQL History

e1xvtsh3

e1xvtsh36#

使用撤消按钮,如图所示

相关问题