0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

トランザクションについてまとめてみた

Posted at

トランザクションについて

  • ワンセットで行われるべき処理の集合。

    • トランザクション開始文とトランザクション終了文でDML文を囲む。
    BEGIN TRANSACTION;
    ~ (処理) ~ 
    COMMIT;
    
  • ROLLBACK について

    • トランザクション(ワンセットで行われる処理)による変更を保存せずに終了すること。
    • テーブルはROLLBACKするとトランザクションの開始前に戻る。
    BEGIN TRANSACTION;
    ~ (処理) ~ 
    ROLLBACK;
    

ACID特製について

  • 原始性(Atomicity)
  • 一貫性(Consistensy)
  • 独立性(Isolation)
  • 永続性(Durabirity)

原始性について

トランザクションが中途半端に終わってないこと。

必ずトランザクションの更新がすべて実行されているか、実行されていない状態。

一貫性について

実行されるトランザクションに違法性(一部制約を満たさないような処理)がないこと。

(例)トランザクションに3つの処理があるとき、2つ目が制約を満たさず処理失敗敗

独立性について

複数のトランザクションが同時に実行されても、それぞれが互いに影響を与えず、単独で実行されたように見えるという性質です。

永続性について

一度コミット(確定)されたトランザクションの結果は、システム障害(停電、サーバーダウンなど)が起きても失われずに永続的に保存される。

(コミットされると基本的にデータベースにログが残る。)

まとめ

トランザクションとはクエリの一連の処理をまとめたもの。
また、トランザクションにはACIDという特性を持つ必要がある!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?