我正在使用 PDO 使用 PostgreSQL 开发应用程序。问题是绑定起作用PDOStatement::bindValue
并且PDOStatement::bindParam
根本不起作用。
我有以下代码:
<?php
try{
$db = new PDO("pgsql:dbname=test;host=localhost", "user", "password");
$all = '*';
$sql = $db->prepare("SELECT :all FROM schema.table");
$sql->bindValue(':all', $all);
var_dump($sql->queryString);
var_dump($sql->execute());
}
catch(PDOException $e){
print $e->getMessage();
}
?>
我只是无法理解原因$sql->queryString
的价值仍然是SELECT :all FROM schema.table
,因为它var_dump()
在这里。
PDOStatement::bindParam
做同样的事情。
有小费吗?
编辑:此查询仅用于调试目的!请不要关心查询本身,而是在不绑定的方法中。