mysql:15880
From: "yoku ts." <"yoku ts." <yoku0825@xxxxxxxxxx>>
Date: Wed, 10 Oct 2012 21:21:06 +0900
Subject: [mysql 15880] Re: mysql5でのINSERT INTO hoge SELECT FROM tempでSELECT側のデータが取得できない。
後藤さん こんばんは、yokuです。 手元ではREAD COMMITTEDでもロック競合が再現したつもりだったんですが、 今色々試してみたところ、READ COMMITTEDのINSERT .. SELECT ..は共有ロックを取らないんですね。。 しかもREPEATABLE READでも排他ロックではなくて共有ロックでした。。 大変失礼しました。。 yoku ts. 2012年10月10日 18:45 雪竹 勝義 <yukitake@xxxxxxxxxx>: > yoku様、後藤様 > Yukitakeです。 > > お世話になります。 > > 今回マイクロソフトのSQLServerからmysqlヘDBを移行させPGを修正してたのですが今回のSQLがうまく動作し > なく困っていました。 > > > 以下の内容参考にして再度ロック関係を確認したいと思います。 > > > 以上 > >>後藤さん >>こんばんは、yokuといいます。 >> >>トランザクション分離レベルとロック競合は別の話なので、 >>READ COMMITTEDでもロックは競合します。 >> >>ご参考までに。。 >> >> >>ts. yoku >> >>2012年10月10日 17:55 tsyk goto <ngyuki.ts@xxxxxxxxxx>: >>> 後藤と申します。 >>> >>> InnoDB なら INSERT INTO の側でトランザクション隔離レベルを >>> READ COMMITTED にすれば競合しないと思われます。 >>> >>> SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED; >>> INSERT INTO WORK( コード、名 )SELECT コード、名 FROM 得意先マスタ WHERE >>> コード = 1; >>> >>> 以上です。 >>> >>> > >
15873 2012-10-10 17:15 [雪竹 勝義 <yukitake] mysql5でのINSERT INTO hoge SELECT FROM tempでSELECT側のデータが取得できない。 15874 2012-10-10 17:33 ┗["yoku ts." <yoku0825] 15875 2012-10-10 17:55 ┣[tsyk goto <ngyuki.ts] 15877 2012-10-10 18:25 ┃┣["yoku ts." <yoku0825] 15879 2012-10-10 18:45 ┃┃┗[雪竹 勝義 <yukitake] -> 15880 2012-10-10 21:21 ┃┃ ┣["yoku ts." <yoku0825] 15882 2012-10-11 13:31 ┃┃ ┗[中川 貴 <takashi.nak] 15878 2012-10-10 18:39 ┃┗[雪竹 勝義 <yukitake] 15876 2012-10-10 18:09 ┗[雪竹 勝義 <yukitake]