@CertaiN zmiňuje, s skutečným připravuje, neemulované, nemůžete svázat stejnou proměnnou vícekrát pod stejným názvem. Můžete se rozhodnout pro spojení s jiným názvem, ale tento dotaz to nepotřebuje. VALUES()
funkce vrátí hodnotu, která by byla vložena
, což by znamenalo tento dotaz:
$sql = 'INSERT INTO users_meta
(user_id,meta_key,meta_value)
VALUES (:user_id,:meta_key,:meta_value)
ON DUPLICATE KEY
UPDATE meta_value = VALUES(meta_value)';
A v případě potřeby lze použít pro více sloupců, například:
$sql = 'INSERT INTO users_meta
(user_id,meta_key,meta_value)
VALUES (:user_id,:meta_key,:meta_value)
ON DUPLICATE KEY
UPDATE
meta_value = VALUES(meta_value),
meta_key = VALUES(meta_key)';