数据库调试

您正在阅读旧版文档,新版文档已迁移至 [https://document.pescms.com]

目录

编写SQL不可能百分百正确,因此数据库调试技巧非常有必要。PESCMS在这方便为大家提供了良好的调试方式。在调试网站的错误时,请检查是否开启了调试模式。

自动输出SQL

当开启了调试模式后,当程序执行SQL出现异常或者某些致命错误,进入报错页后,在错误页面下方将会显示最后执行的SQL语句。如下图所示。

blob.png

上图除了给出执行的SQL外,还给出详情的错误明细,非常方便大家进行调试。

如果你设置了自己的错误页面,若没有保留对应的输出信息,将无法显示最后执行的SQL语句。

打印SQL

PESCSM为了方便开发者对执行的SQL语句调试,提供了手动调试方法,getLastSql。具体如下:

<?php    
$this->db('user')->where('user_id = :user_id')->find(array('user_id' => '1'));    
echo $this->db()->getLastSql;    
//SELECT * FROM pes_user WHERE user_id = 1 LIMIT 1;

getLastSql仅用于获取程序最后一次执行的SQL语句,同时,getLastSql输出的SQL语句会将预处理的占位符替换为对应的值,若输出的SQL语句还存在占位符,表示本SQL语句在占位符上使用存在问题。

PESCMS DOC 文档系统
© Copyright 2015-2024. by the PESCMS DOC
耗时0.0269秒