<分区>
我的 PDO 语句中有这样的查询:
SELECT * FROM table WHERE ? =?按 id 降序排序
我想将列名绑定(bind)到第一个 ?
并将值绑定(bind)到第二个 ?
(列 = 值)
我尝试了很多事情,比如下面,但他们都失败了或者返回空数组(当应该有结果的时候)
返回空数组
$query = "SELECT * FROM table WHERE ? = ? ORDER BY id DESC"
$db->prepare($query);
$stmt->bindValue(1, $column, PDO::PARAM_STR);
$stmt->bindValue(2, $value, PDO::PARAM_STR);
这个显示错误
$query = "SELECT * FROM table WHERE column = :value ORDER BY id DESC"
$db->prepare($query);
$stmt->bindColumn('column', $column);
$stmt->bindValue(':value', $value, PDO::PARAM_STR);
列是可变的,所以我必须绑定(bind)它,不能直接将它放在查询中。
我在这里做错了什么?我尝试了很多东西但没有运气......
Please note that I know how to bind values if column is static, my issue is when column is also variable like above.