/ / mysql pdo: ako zistiť, či vyhlásenie vložil alebo aktualizoval už existujúci riadok - mysql, pdo

Ako zistiť, či vyhlásenie vložil alebo aktualizoval už existujúci riadok - mysql, pdo

Používam vyhlásenie vo formáte:

insert into $table (field, value) values (:name, :value)
on duplicate key
update value=:value2 into $table (field, value) values (:name, :value)

aktualizovať alebo vložiť riadok do mojej databázy (sjedinečné obmedzenie), ale mám niekoľko ďalších otázok, ktoré sa majú robiť a ktorý z nich by sa mal použiť, závisí od toho, či boli údaje vložené alebo aktualizované. Existuje spôsob, ako v CHOP zistiť, k čomu došlo?

odpovede:

2 pre odpoveď č. 1

Pri zapnutom DUPLICATE KEY UPDATE je hodnota príslušných riadkov na riadok 1, ak je riadok sa vloží ako nový riadok a 2, ak sa aktualizuje existujúci riadok.

http://dev.mysql.com/doc/refman/5.1/en/insert-on-duplicate.html


1 pre odpoveď č. 2

Pokiaľ si pamätám, rowCount vráti 1 na vloženie a 2 na aktualizáciu.