Yii查看(输出)当前页面执行的sql语句

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Yii查看(输出)当前页面执行的sql语句相关的知识,希望对你有一定的参考价值。

在Yii框架下查看当前页面执行的所有sql语句的方法,主要是通过配置相关文件来达到调试sql的目的,具体方法如下:

(1)修改 index.php 开启调试模式

在 index.php 文件内增加如下两行代码(如果不存在的话):

1 //开启调试模式
2 defined(‘YII_DEBUG‘or define(‘YII_DEBUG‘,true);
3 //设置日志记录级别,YII_TRACE_LEVEL的数字越大,信息越清楚
4 defined(‘YII_TRACE_LEVEL‘or define(‘YII_TRACE_LEVEL‘,3);

(2)修改配置文件 main.php

在config/main.php的 components - log - routes 下加入如下数组:

1 array
2     ‘class‘=>‘CFileLogRoute‘,//文件记录日志的形式
3     ‘levels‘=>‘trace‘,//日志记录级别
4     ‘categories‘=>‘system.db.*‘,//只显示关于数据库信息,包括数据库连接,数据库执行语句
5     ‘logFile‘ => ‘app_‘.date(‘Y-m-d‘).‘.log‘,//日志保存文件名
6     ‘logPath‘=>‘D:\phpStudy\WWW\phpernote\com\tmpfile\log_db‘,//日志保存路径
7 ),

ok,经过如上的设置,刷新页面,你就可以到 D:\phpStudy\WWW\phpernote\com\tmpfile\log_db 这个目录里面去查找生成的sql记录文件了。输出的日志格式如下:

[时间] - [级别] - [类别] - [内容]

2015/04/17 10:30:51 [trace] [system.db.CDbCommand] Querying SQL: SELECT * FROM `phpernote_article` ORDER BY id desc LIMIT 15

以上是关于Yii查看(输出)当前页面执行的sql语句的主要内容,如果未能解决你的问题,请参考以下文章

开发模式下怎么查看每次请求页面的sql语句

调试执行的SQL语句

如何查看mysql中执行sql语句

JavaWeb 学习006-4个页面,5条sql语句(添加查看修改删除)

Sqlite客户端的使用

MySql使用show processlist查看正在执行的Sql语句