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


    在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:phpStudyWWWphpernotecom mpfilelog_db',//日志保存路径
    7 ),

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

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

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

    转自 http://www.cnblogs.com/xieqian111/p/5217548.html

  • 相关阅读:
    webdriver中的等待——主要讲解WebDriverWait()
    flask_sqlalchemy中的db.session.update()与db.sesssion.merge()方法的区别,db.session.query(Model)与Model.query()的区别
    Python-shutil模块
    python3-对拉钩网数据爬取及简单的数据分析
    设计模式的原则
    gcc 版本降级
    ubuntu 装机及装机以后干的事情
    ubuntu 美化
    python 抢火车票
    隔行扫描, 逐行扫描
  • 原文地址:https://www.cnblogs.com/rainblack/p/5511716.html
Copyright © 2020-2023  润新知