【トランザクション】
 金融機関の入出金処理をイメージするとわかりやすい。
 複数の処理を一つにまとめたものをトランザクションとし、トランザクション内のデータの整合性を保証する。
 MySQLだとInnoDBとBDBで使える。MyISAMは無理。
 【アトミックオペレーション】
 いくつかの操作を組み合わせたもので、システムの他の部分から見てそれらがひとつの操作に見えるものをいう。
 ようするに、トランザクションはアトミックオペレーション。
 MyISAMは非トランザクション型テーブルだが、アトミックオペレーションなので、データの整合性は保証されている。ただ、複数の処理を組み合わせるときにトランザクションが使えず、ロックとかするしかないということ。
 MyISAMを利用して、トランザクションちっくな処理を行うテクニックはリンク先を参照すること。
 できるだけLOCK TABLESは避けた方がいい。デッドロックの管理が面倒だから。
 http://ftp.ku.ac.th/pub/mirror/mysql/doc/refman/5.1/ja/ansi-diff-transactions.html
 
 
コメントを残す