私は MySQL が初めてで、それについてもっと学びたいと思っています。現時点では理解しにくい myseql doc を読んでいます。
説明していただけますか、これらは本当ですか、それとも間違っていますか?
1 - MySQL では、既に実行されたクエリの更新または削除を元に戻す方法はありません。たとえば、過去 24 時間以内に 1900 件のクエリがありました。元に戻すことはできません。
2 - MySQL で現在のトランザクションをロールバックすることのみが可能です。
3 - トランザクションが終了すると、セーブポイントは破棄されます。つまり、今日の午前 10 時にセーブポイントを作成することはできません。
4 - セーブポイントとロールバックは現在のトランザクション内でのみ有効であり、コミットが完了すると終了します。
質問:
1 - 現在のトランザクションのみをロールバックできる場合、ロールバックまたはトランザクションのポイントは何ですか?
トランザクションが間違っている場合、なぜそれを実行するのですか?
編集:
次のようなセーブポイントを作成しました。
start transaction;
savepoint behnam;
commit;
次に、更新クエリと削除クエリをいくつか実行しました。次に、そのセーブポイントにロールバックしようとしました:
rollback to savepoint behnam
そして私は得る:
#1305 - SAVEPOINT behnam does not exist