web-dev-qa-db-ja.com

未保存のSQLクエリスクリプトを回復する

SSMSがクラッシュした/未保存のタブが誤って閉じられた場合に未保存のスクリプトを復元する方法

182
BumbleBee

誰かが同じ問題に遭遇した場合に備えてこれを投稿する。

保存されていないスクリプトを取得し 、解決策を見つけました。

次のselectスクリプトを実行します。スクリプトの一覧と過去24時間の実行時間が表示されます。スクリプトを保存せずにSQL Server Management Studioでクエリウィンドウを閉じると、スクリプトを取得するのに役立ちます。ビューやプロシージャだけでなく、実行されたすべてのスクリプトに対して機能します。

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
385
BumbleBee

あなたこれらの場所の1つでそれらを見つけることができるかもしれません(あなたが使っているWindowsのバージョンによります)。

Windows XP

C:\Documents and Settings\YourUsername\My Documents\SQL Server Management Studio\Backup Files\

Windows Vista/7/10

%USERPROFILE%\Documents\SQL Server Management Studio\Backup Files

OR

%USERPROFILE%\AppData\Local\Temp

このソースからグーグルしたもの とこのソースから

153
Matt

パーティーには少し時間がかかりましたが、上記の場所のどれも私のために働きませんでした - 何らかの理由でバックアップ/自動回復ファイルは私のPCのVS15フォルダの下に保存されました(これはSQL Server 2016 Management Studioのためです)

C:\ Users \ユーザー名\ Documents\Visual Studio 2015\Backup Files\Solution1

あなたはあなたのツール - オプション - 環境 - インポートとエクスポートの設定をチェックしたいかもしれません、設定ファイルの場所はあなたのバックアップフォルダーを指すかもしれません - 私はこれのためにVS15フォルダーの下を見たことがないでしょう。

32
DonQ

すべての~AutoRecover.~vs*.sql自動回復ファイル)を見つけることができる次の場所を使用してください。

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

たぶん、あなたは示唆されたディレクトリを見つけられないか、あなたの回復ファイルが見つからない、おかげで私は未保存のスクリプトでクラッシュを再現し、このディレクトリに案内してくれました:

C:\ Users\user\OneDrive\Documents\Visual Studio 2015\Backup Files\Solution1

だから、多分これはあなたの日を救う:)

8
frapeti

SSMSBoostアドイン(現在無料)

  • 実行されたすべてのステートメントを追跡します(ディスクに保存します)。
  • regularyはSQL Editorの内容のスナップショットを保存します。あなたはあなたのスクリプトの修正の歴史を保存します。時には "最高の"バージョンが最後ではなく、あなたは中間状態を復元したいと思います。
  • 開いているタブを追跡し、再起動後にそれらを復元することができます。未保存のタブも復元されます。

他にもたくさんの機能があります。 (私はアドインの開発者です)

5

私はWindows 8を使用していて、下のパスで足りないスクリプトを見つけました:

C:\Users\YourUsername\Documents\SQL Server Management Studio\Backup Files
5
M PRATAP

次の場所からファイルを復元できました。

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

タブごとに異なるリカバリファイルがあるはずです。私はあなたがそれらを失った日のファイルを探すと言うでしょう。

3
NonProgrammer

SSMSウィンドウを誤って閉じたときに、ここにファイルが見つかります。

C:\Windows\System32\SQL Server Management Studio\Backup Files\Solution1
3
Naveen

SSMS >>ツール>>オプション>>環境>>自動回復に行って下さい

2つの異なる設定があります。

1)自動バックアップ情報を毎分保存する

このオプションは、一定の間隔でSQLクエリファイルを保存します。損失を避けるために、このオプションを最小値に設定してください。この値を5に設定した場合、最悪の場合、作業の最後の5分を失う可能性があります。

2)自動バックアップ情報を数日間保存

このオプションは、指定された日の自動回復情報を保存します。ただし、万が一の場合に備えてSQL Server Management Studioをすぐに開き、ファイルを回復してください。この重要な仕事を将来の予定に先延ばししないでください。

3
noobjet

私はこれが古いスレッドであることを知っています、しかしssmsがクラッシュした後にスクリプトを検索しようとしている人のために以下をします

  1. ローカルディスクを開く(C):
  2. Open usersフォルダ
  3. ユーザー名に関連するフォルダを見つけて開きます
  4. Documentsファイルをクリックしてください。
  5. 表示されている場合は、Visual Studioフォルダをクリックするか、バックアップファイルフォルダをクリックします。
  6. バックアップファイルフォルダをクリックします
  7. Solution1フォルダを開く
  8. 回復した一時ファイルはすべてここにあります。ファイルはvsで終わり、vs9E61などの番号が続きます。
  9. ファイルを開き、失われたコードを確認してください。それが役立つことを願っています。これらの正確な手順は、私にとってはうまくいきました。 SQL Server Express 2017を使用しているim