[MySQL] INSERT … ON DUPLICATE KEY UPDATE … でハマったの

PHP 5.2.10 MySQL 5.1 にて。

MySQLの構文にINSERT … ON DUPLICATE KEY UPDATE …というものがあります、
primary keyおよびUnique keyで重複するキーがある場合はUPDATE、重複しない場合はINSERT してくれるという
大変良い感じの構文なのですが mysql_insert_id()の挙動でちょっとはまってしまったのでメモ。

以下のような、SQLを発行しmysql_insert_id()を実行してみる

Continue reading