質問: $mysqli->prepare($sql)) { //条件値をSQLにバインド $stmt->bind_param("i", $id); //実行 $stmt->execute(); } ``` 例えば`123456`カラムの`id`が123の行の値が3であった場合、1加算して4を書き込みたいのですが、実行してみると COALESCE({$code},0) の部分が列名でなく、ただの整数として認識され、123456+1=123457がフィールドに書き込まれています。 すべて数字で記されたカラム名を、加算の際にカラム名として認識させたいのですが、どうすればよいかご教授下さい。 あるいは、そもそもカラム名を数字で記述するという設計に問題があるのでしょうか?
回答: COALESCE(`{$code}`,0)のように、列名部分をバックスラッシュで囲めば問題なく動きました。