2015-07-20 64 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