SELECT LAST_INSERT_ID()

MySQLでS2Daoを使っていて、insert してもその後、オブジェクトに正しいプライマリキーのIDが入らないから何でだろうと思い、調べてみる。MySQLの場合は、オブジェクトを insert した後に SELECT LAST_INSERT_ID() をして、値を取得して、オブジェクトに入れてくれるのね。っで、insert したコネクションと SELECT LAST_INSERT_ID() したコネクションが違うと、0 が返ってきて、オブジェクトの ID が 0 になるみたい。というわけで、トランザクションまわりの自分の設定が悪かったわけでした(^^; なるほどね、ちょっと賢くなった。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です