タグ

関連タグで絞り込む (2)

タグの絞り込みを解除

transactionに関するcknbstrのブックマーク (2)

  • tree-tips: MySQLの外部キーとデッドロック | MySQL

    外部キーでデッドロックを起こすサンプルコード。 drop table if exists child; create table child (id int, pid int, primary key (id, pid))engine=innodb; drop table if exists parent; create table parent (id int, count int, primary key (id))engine=innodb; insert into parent values (1, 0); alter table child add foreign key (id) references parent (id); トランザクションA ------------------------------------- begin; insert into child val

  • tree-tips: MySQLのlock in share mode | MySQL

    lock in share modeとは? lock in share modeは、共有ロック・shared lock・slock、と言われているロックです。 for updateは、排他ロック・xlock、と言われています。 参照(select)する時にロックをする機能です。 lock in share modeはどんな時に使う? 主な使い道は、ファジーリード・ロストアップデートを防ぐ、です。 ファジーリードはトランザクション分離レベルがread committed以下の場合の発生します。repeatable readの場合はそもそもANSI/ISO SQLの仕様上発生しません。 具体的な使い所としては、一覧画面の表示時のSQLや、不正データ検出、等で使うかと思います。 for updateとの違いは? 最大の違いはslockによる参照をブロックしない・されない点です。つまり、参照同士の

  • 1