php - PDO 预处理语句返回空数组

标签 php mysql pdo statements

这将返回一个空数组:

$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();
    }
}

我查看了示例和文档 - 我的语法似乎没问题。为什么第一个代码示例返回空数组?

谢谢!

最佳答案

您不能将表名绑定(bind)到 PDO 参数。参数仅适用于比较或赋值的操作数。

关于php - PDO 预处理语句返回空数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21556293/

相关文章:

mysql - 需要一个有效的查询来从两个表中进行选择

php - mySQL中的表结构

php - 如何创建逗号分隔的单词

php - Laravel 随机连接到不同的数据库

javascript - AngularJS 也获取空数据

php : variable into SQL QUERY (PDO)

symfony - 在 DBAL 和 session 处理程序 Symfony2 之间共享数据库连接

php - 忽略 MySQL PDO PHP 命令行中的 1 行不起作用

php - 使用绝对位置游标的 PDO pgsql 获取失败

php - 如何在 MySQL 中对值进行分组