如果SSMS崩溃/未保存选项卡意外关闭,如何恢复未保存的脚本?


当前回答

使用下面的位置可以找到所有的~AutoRecover.~vs . *。SQL(自动恢复文件):

C:\Users\<YourUserName>\Documents\SQL Server Management Studio\Backup Files\Solution1

其他回答

如果你碰巧有SSMS的RedGate工具,那么他们有一个非常有用的工具叫做标签历史,它会显示你所有打开和关闭的标签(甚至脚本,你写和关闭没有执行)。

在Toolkit工具栏上应该有一个按钮,看起来像这样,它会打开一个包含所有脚本列表的窗口(它也有一个搜索功能,所以你可以搜索你的脚本):

我知道这与大多数人无关,但它可能会帮助那些失去工作的人……

使用下面的位置可以找到所有的~AutoRecover.~vs . *。SQL(自动恢复文件):

C:\Users\<YourUserName>\Documents\SQL Server Management Studio\Backup Files\Solution1

把这个贴出来以防有人遇到同样的问题。

谷歌检索未保存的脚本,并找到了一个解决方案。

运行下面的选择脚本。它提供了一个脚本列表及其在过去24小时内的执行时间。这将有助于检索脚本,如果我们关闭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

如果您仍然没有找到恢复文件夹,您可以尝试以下方法:

开放的地对地导弹。 在上面写一些查询。 等待一段时间,确保文件以静默方式保存。 打开任务管理器并终止SSMS应用程序。 重启地对地导弹。应该会提示您打开未保存的工作。 打开提议的文件并将鼠标悬停在文件选项卡上以查看其位置。

也许你没有找到建议的目录,或者你的恢复文件丢失了,感谢上帝,我用一个未保存的脚本复制了崩溃,并引导我到这个目录:

C:\Users\<用户名>\OneDrive\Documents\Visual Studio <version>\Backup Files\ solution

所以,也许这可以拯救你的一天:)