次のようなクエリがあります。
$a = $members->prepare("insert into a(name) values(:name)
on duplicate key update name = :name");
それから私がするとき:
$insert_id = $a->lastInsertId()
クエリが行を正常に挿入した場合は、期待どおりに挿入 ID を返します。行を更新した場合は、更新された行 ID も期待どおりに返します (並べ替え)。しかし、すべてが同じであるために何も挿入または更新しなかった場合は、0 を返します。
これはかなり論理的なデフォルトの動作だと思いますが、実際に行の何かを変更したときのように、更新しようとした行のIDを返すことができるように変更する方法はありますか.
ありがとう。