找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1862|回复: 0
打印 上一主题 下一主题

Yii调试SQL的常用方法

[复制链接]

2487

主题

2487

帖子

7391

积分

论坛元老

Rank: 8Rank: 8

积分
7391
跳转到指定楼层
楼主
发表于 2018-2-14 05:56:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            Yii调试SQL主要有以下方法:
一、系统自带调试:
首先index.php开启调试模式:
// remove the following lines when in production mode
defined('YII_DEBUG') or define('YII_DEBUG',true);
// specify how many levels of call stack should be shown in each log message
defined('YII_TRACE_LEVEL') or define('YII_TRACE_LEVEL',3);
//app use time
//defined('YII_BEGIN_TIME') or define('YII_BEGIN_TIME',microtime(true));
main.php页面:
'errorHandler'=>array(
  // use 'site/error' action to display errors
  'errorAction'=>'site/error',
),
'log'=>array(
  'class'=>'CLogRouter',
  'routes'=>array(
    array(
      'class'=>'CFileLogRoute',
      'levels'=>'error, warning',
    ),
    // 下面显示页面日志
    array(
      'class'=>'CWebLogRoute',
      'levels'=>'trace',   //级别为trace
      'categories'=>'system.db.*' //只显示关于数据库信息,包括数据库连接,数据库执行语句
    ),   
  ),
),
YII_TRACE_LEVEL的数字越大,信息越清楚
二、使用调试工具调试:
yii-debug-toolbar把包解压后 放到extensions里边 然后在配置文件main.php中最后加上
'log'=>array(
   'class'=>'CLogRouter',
   'routes'=>array(
     array(
       'class'=>'ext.yii-debug-toolbar.YiiDebugToolbarRoute',
       'ipFilters'=>array('127.0.0.1','192.168.1.215'),
     ),
   ),
),
没有出现的话加上在'components'下的db里加上两个属性,
'enableProfiling'=>true,
'enableParamLogging'=>true,
然后如果有其他调试工具的插件的话,可能会出现冲突导致sql语句不出来,把那段代码注掉即可。
            
            
您可能感兴趣的文章:
  • Yii实现MySQL多数据库和读写分离实例分析
  • Yii2.0高级框架数据库增删改查的一些操作
  • YII2数据库查询实践
  • Yii调试查看执行SQL语句的方法
  • Yii2框架数据库简单的增删改查语法小结
  • Yii2中SqlDataProvider用法示例
  • yii2.0数据库迁移教程【多个数据库同时同步数据】
  • 使用Yii2实现主从数据库设置
  • Yii2——使用数据库操作汇总(增删查改、事务)
  • Yii2框架实现数据库常用操作总结
  • yii2 数据库读写分离配置示例
  • Yii2实现跨mysql数据库关联查询排序功能代码
  • Yii2数据库操作常用方法小结
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端