Doctrine executeQuery获取最终查询

时间:2014-09-23 08:04:10

标签: php doctrine-orm

使用Doctrine时,您可以创建原生查询。

我正在跑步

$this->getEntityManager()
    ->getConnection()
    ->executeQuery($query, $parameter, $types)
    ->fetchAll(PDO::FETCH_BOTH);

包含所有参数的最终查询在executeQuery()内生成。有没有办法在那里创建最终查询?

1 个答案:

答案 0 :(得分:0)

原来没有办法做到这一点。

Doctrine将查询和参数分别发送到数据库,只有数据库将它们放在一起。因此,Doctrine无法知道完整的查询。

仍在调试quere的方法是激活常规查询日志:MySQL General query log

要激活它,只需创建一个新的mysql配置文件,如/etc/mysql/conf.d/query_log.cnf,并输入以下内容:

[mysqld]
log=/tmp/query.log # Path to your log file

简而言之:这将记录最终在mysql数据库中执行的所有sql语句。