2015-07-20 60 views
1

如何获取从ORM发送到服务器的原始SQL字符串?如何拦截它以完成定制工作?从ORM获取原始SQL查询字符串

我想将查询转发给自定义驱动程序。我的目标是通过NodeJS的MS SQL Server - 来自Linux环境。

但我不想重新发明轮子。我想重用现有的SqlServer查询构建器。

回答

0
$query = $this->find(); 
debug($query); 

$query是一个查询对象,您可以从中获取原始SQL表达式。

1

只要您的查询不被指定者()或类似的东西执行,你可以使用Q- $> SQL()来获取原始SQL查询,CakePHP就会执行:

$q = $this->Model->find('all'); 
$this->log($q->sql()); // log raw sql query