2016-06-20 8 views
3

SQL Serverテーブルのすべての行を誤って更新しました。トランザクションを使用せずにSQL Serverテーブルの更新データをロールバックする

これはトランザクションの一部ではないため、ロールバックできません。どのように元に戻すことができますか?

+0

オラクルでは、 'flashback'を使用しています...あなたはおそらくデータベースを復元することを検討できますか?マニュアルは助けになるはずです。 –

+0

トランザクションログのバックアップを頻繁に取っていたらうれしいです。特定の時点にリストアするには、SQL Serverのバージョンに応じて、次の手順に従います。https://technet.microsoft.com/en-us/library/ms190982(v=sql.105).aspx –

答えて

0

データベースの新しい更新を停止します。

新しいバックアップファイルをフルバックアップします。

ここで、トランザクションバックアップを新しいファイルに作成します。

ここで、ポイント・イン・タイム・リストアを実行します。あなたの事故の前の時間を選択してください。

それ以降に発生した他のすべてのイベントは失われます。

プロダクションデータベースの場合は、新しいデータベースに特定の時点のリストアを行い、その後、更新ステートメントを使用して間違ったデータを修正する必要があります。

幸運にも、落ち着いてください。

+0

データベースのリカバリモデルが "FULL"に設定されている場合、その時点を指摘することはオプションに過ぎません。もちろん、他の種類のバックアップを復元することもできます。これは、バックアップの内容や、いつ更新が実行されたかを確認できるかどうかによって異なります。 – Bridge

関連する問題