这将返回一个空数组:
$query_string = "select * from :table where id=1";
$args = array(":table" => "pages");
$result = $db->Query($query_string, $args);
这将从数据库中提取并返回数据:
$query_string = "select * from pages where id=1";
$result = $db->Query($query_string);
查询方法:
public function Query($query, $arguments = null) {
$pdo_query = $this->Connection->prepare($query);
$pdo_query->execute($arguments);
if($pdo_query) {
return $pdo_query->fetchAll();
}
}
我浏览了样本和文档 - 我的语法似乎很好。为什么第一个代码示例返回空数组?
谢谢!
答案 0 :(得分:4)
您无法将表名绑定到PDO参数。参数仅适用于比较或赋值的操作数。
答案 1 :(得分:2)
如上所述,您无法将表名绑定到参数,您应该像这样更改代码
$query_string = "select * from pages where id=:id";
$args = array(":id" => "1"); //the : is not necessary but as it is a non-documented feature I would always set it
$result = $db->Query($query_string, $args);