尝试对我的查询进行参数化,这是一个简单的问题
$query = $this->handle->prepare('USE :db_name');
$query->bindParam(':db_name', $db_name, PDO::PARAM_STR);
$query->execute();
但是,它会抛出无效的语法错误。我检查了查询日志,它出现了
USE 'test'
但是,如果我手动编写,不起作用
USE test
然后这确实有效。这给我留下了两个问题
不应该用单引号工作吗? AFAIK,引用只标记SQL中字符串的开头和结尾,为什么它会破坏它?
如何让准备好的查询不自动在参数周围加上引号?