社内勉強会(1) – MySQLのトランザクション

今月から社内勉強会は、社員が持ち回りで講師を担当することになりました。
初回のテーマは「MySQLのトランザクション」です。
MySQLにほぼ限定した形でトランザクションについて発表をしました。

資料は以下の5章立てになっています。
1.トランザクションとは
2.ストレージエンジン
3.トランザクションの開始と終了
4.ACID特性
5.オートコミット

日頃の業務では、実行したSQLの動作確認をした際に、意図した結果が得られない場合に処理を戻せるように、「begin」で書き始めてトランザクションを開始するようにしています。
しかし、そもそもトランザクションは「失敗した時に戻すための機能」ではありません。
普段から使ってはいるけれど深くは知らなかったトランザクションについてちょっとだけ知識を深めるよい機会になったと思います。

なお、「2.ストレージエンジン」の中で、MySQLで利用できるストレージエンジンはInnoDBとMyISAMの2つだけであるかのように書かれていますが、この代表的な2つ以外にもいくつかのストレージエンジンが存在します。ただし、ほとんど使われません。