SOFTELメモ Developer's blog

会社概要 ブログ 調査依頼 採用情報 ...
技術者募集中

【MySQL】トランザクション中に CREATE TABLE すると、そこでコミットされる

問題

MySQLのトランザクションですが、beginとcommitの間でcreate tableを実行すると、その時点でコミットがかかってしまうのですね。

答え

参考ページ http://dev.mysql.com/doc/refman/5.1/ja/innodb-implicit-commit.html

そうらしいですね。

実際にテーブルを作ったかどうかにかかわらず create table if not exists …… で、テーブルがすでに存在しているときでも同じです。

create temporary table なら問題ないようです。

関連するメモ

コメント