php pdoで左辺値にプリペアドステートメントを適用するにはどのようにすれば良いでしょうか。


$sql = 'UPDATE tableName SET :key = :state';
$stmt = $pdo->prepare($sql);
$stmt -> bindValue(":key" ,$key);
$stmt -> bindValue(":state" ,0);

上記のコードのように:keyの位置に変数を使用したいのですが4行目で$stmtにfalseが入ってしまいます。

回答の条件
  • 1人50回まで
  • 登録:2016/11/23 00:23:32
  • 終了:2016/12/23 00:25:03

回答(0件)

回答はまだありません

  • id:degucho
    どの接続方法やどのDBでも
    Prepare(準備=SQLのコンパイル)という構造上
    テーブル名や列名を可変にすることは不可能です。
    (実行時にならないと分からないのでは準備できないため)
  • id:ryo0821
    >>deguchoさん
    コメントありがとうございます。そうだったのですね・・・ 何か回避して出来る方法を探したいと思います。ありがとうございました。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません