如果未保存的标签被意外关闭,有没有办法做到这一点?
答案 0 :(得分:24)
我能够在意外关闭标签后恢复我正在处理的查询。如果您实际运行了查询,它应该在SQL Server的查询缓存中。查询查询缓存并按创建日期对结果进行排序。有关SQL Server查询缓存的更多信息:
修改像这样的查询(在http://msdn.microsoft.com/en-us/library/ee343986(v=SQL.100).aspx找到)
SELECT cp.objtype AS PlanType,
OBJECT_NAME(st.objectid,st.dbid) AS ObjectName,
cp.refcounts AS ReferenceCounts,
cp.usecounts AS UseCounts,
st.text AS SQLBatch,
qp.query_plan AS QueryPlan
FROM sys.dm_exec_cached_plans AS cp
CROSS APPLY sys.dm_exec_query_plan(cp.plan_handle) AS qp
CROSS APPLY sys.dm_exec_sql_text(cp.plan_handle) AS st;
获得您想要的结果。 “st.text”列将包含在数据库服务器上运行的查询。
答案 1 :(得分:4)
我还在MSDN website发现无法恢复这些文件,但我会试一试(这对我有用):
查看文件夹C:\ Users \ YOURUSERIDHERE \ Documents \ SQL Server Management Studio \ Backup Files \ Solution1,并选择文件以查找机器重新启动或崩溃的日期。 SQLBlog.com
看看文件夹C:\ Users \“[你的用户名在这里]”\ AppData \ Local \ Temp \(这对我不起作用,因为我的.sql文件有0KB和.tmp文件有一些东西,但我找不到从这些.tmp文件中“提取”代码的方法。假设有时可能会有所帮助,具体取决于系统重启/崩溃的原因。 ayesamson.com
答案 2 :(得分:3)
我不确定是否存在,但使用TimeSnapper可以帮助显示之前在窗口中显示的内容。
答案 3 :(得分:2)
我不相信。我在msdn网站上查了一下,这里有一个关于这个的帖子,答案是否定的。
答案 4 :(得分:2)
导航到我的文档\ SQL Server Management Studio Express \ Backup Files \ Solution1,您将找到已恢复的积压。这是唯一的解决方案。
答案 5 :(得分:0)
1.查看文件夹C:\ Users \ YOURUSERIDHERE \ AppData \ Local \ temp,然后按修改日期对文件进行排序,并选择大小大于0字节的最后一个.sql。这对我有用。
答案 6 :(得分:0)
不幸的是,SSMS目前没有Undo Closed Tab功能。我创建了以下Connect Item,因此Microsoft希望在将来的版本中添加它:https://connect.microsoft.com/SQLServer/Feedback/Details/1044403