私は使用しているAPIからデータを受け取ったときにDBを更新しています。MySqli UPDATE、エントリが存在しない場合を検出
そして私はvalue
を自分のDBにはないものに変更しましたが、エラーが出るかどうかをテストしています。そうではなく、varがマッチしてDBが更新されたかのようにすべてが進んでいました。
これを確認するにはどうすればよいですか? MySQLのは(当然の構文スキーマに関連するものを除く)UPDATE
にないリターンすべてのエラーをしているためエラーがない
foreach($message_id_array as $key=>$value) {
$query = "UPDATE `sms_messages_tbl`
SET `delivery2_api_to_enduser`= '1',
`delivery2_response_time` = UTC_TIMESTAMP(),
`delivery2_response_api_ip`= '".$ip."',
`delivery2_response_from_api`= '".$message_status_array[$key]."'
WHERE `transaction_sms_id` = '".$value."' ";
if ($conn->query($query) === TRUE) {
echo ''.$message_status_array[$key].':'.$value.':OK';
} else {
echo "Error updating record: " . $conn->error;
}
$conn->close();
}
クエリを実行した後で、影響を受けた行を確認することができます。このリンクを参照してください。http://php.net/manual/en/mysqli.affected-rows.php – vmachan