各々のデータベースの SAVEPOINT の違い ― 2021年06月22日 12時05分33秒
SAVEPOINT は BEGIN で始めたトランザクションの最中に戻り点を作る操作。同名の SAVEPOINT を作ると、新しい時点の物が有効になる。SAVEPOINT に戻りたい時は、ROLLBACK TO で戻ることが出来る。また、一般的な実装では、END にてトランザクションを終了すると SAVEPOINT も一緒に消される。
大体のデータベースはこの基本的な動作にそった実装をしているようだ。PostgreSQL、MarinaDB/MySQL 等を筆頭としたオープンソース系もこの実装になっている。
SQLite は独自の拡張が入っていて、SAVEPOINT をトランザクションの外でも作ることが出来る。ほぼスナップショットの様な感じになっている。
コメント
トラックバック
このエントリのトラックバックURL: http://uyota.asablo.jp/blog/2021/06/22/9390456/tb
※なお、送られたトラックバックはブログの管理者が確認するまで公開されません。
コメントをどうぞ
※メールアドレスとURLの入力は必須ではありません。 入力されたメールアドレスは記事に反映されず、ブログの管理者のみが参照できます。
※なお、送られたコメントはブログの管理者が確認するまで公開されません。