8

コマンドを実行しただけです

update sometable set col = '1';

where条件を指定せずに誤って。以前のバージョンのテーブルを復元することはできますか?

4

3 に答える 3

11

あなたがいない限り...

  1. クエリを実行する前にトランザクションを開始し、...
  2. まだトランザクションをコミットしていない

...それなら、自分で作成した可能性のある以前のバージョンのデータベースのバックアップを除いて、運が悪いです。

(手動でクエリを入力するときにトランザクションを使用しない場合は、将来、おそらく現在抱えているような頭痛の種を防ぐために使用することをお勧めします。トランザクションは、5 秒後に認識されるような間違いを軽減するために非常に貴重です。)

于 2010-05-15T07:19:44.217 に答える
2

sql_safe_updatesこの種のことを再び行うことが心配な場合は、将来有効にすることを検討してください。

SET SESSION sql_safe_updates = 1
于 2010-05-15T18:06:36.817 に答える
1

いいえ。MySQL は一部のテーブル タイプのトランザクションをサポートしていますが、この質問をしているので、使用していないに違いありません。

これは誰でも一度はします。心配する必要があるのは、2回行うときです:)

于 2010-05-15T07:20:45.563 に答える