2016-12-26 12 views
0

データベースに挿入または更新する番号を取得する最良の方法は何ですか?私は、この挿入の後になってしまっカウントかを把握しようとしている:テーブルに挿入または更新された番号を取得

$pdo = $db->prepare('INSERT INTO dailies (day, count) VALUES (:day, 1) ON DUPLICATE KEY UPDATE count = count+1'); 
$pdo->execute(array(':day'=>date('z'))); 

私はフェッチをやろうとしているが、その作業はありません。これは挿入または更新であり、選択ではないので、私は推測しています。

$fetch = $pdo->fetch(PDO::FETCH_ASSOC); 

答えて

1

あなたはユーザー変数を使用してこのような何か行うことができます。そして、

INSERT INTO dailies (day, count) VALUES (:day, 1) ON DUPLICATE KEY UPDATE count = (@new_count = count+1)

SELECT @new_count

レコードが挿入された場合は、@new_countはあなたが設定した値が含まれますが更新。さもなければそれはNULLとして戻って来る。