在模型操作中 ,为了更好的查明错误,经常需要查看下最近使用的SQL语句,我们可以用getLastsql方法来输出上次执行的sql语句。例如:

User::get(1);

echo User::getLastSql();

输出结果是 SELECT * FROM 'think_user' WHERE 'id' = '1'

也可以使用fetchSql方法直接返回当前的查询SQL而不执行,例如:

echo User::fetchSql()->find(1);

输出的结果是一样的。

getLastSql方法只能获取最后执行的SQL记录,如果需要了解更多的SQL日志,可以通过查看当前的Trace信息或者日志文件。

tp5的打印最后一条sql

//以下都需要需要引用类库

use think\Db;

Logs("第".__LINE__."行.loging/index","loging","loging");

Logs(db("lb_admin_mechanism")->getLastSql(),"loging","loging");

Db::name('report')->fetchSql(true)->insert($report)强制打印

//打印语句

dump( Db::table('table_name')->getLastSql());

dump( Db::getLastSql());

/**创建日志文件

* $content @array/@string 要记录的数据

* $dir @string 文件夹名字

* $file @string 日志文件名字

* author haima

*/

function Logs($content,$dir,$file='')

{

if(empty($dir)) die("文件夹名不可为空");

$file_path = ROOT_PATH . 'Logs/'.$dir;

if(!is_dir($file_path)){

mkdir($file_path, 0777, true);

}

file_put_contents($file_path.'/'. $file . date('Ymd',time()) . '.log', date('Y-m-d H:i:s',time()) .' ' . var_export($content,true) . "\r\n", FILE_APPEND);

}

thinkPHP框架中执行原生SQL语句的方法

这篇文章主要介绍了thinkPHP框架中执行原生SQL语句的方法,结合实例形式分析了thinkPHP中执行原生SQL语句的相关操作技巧,并简单分析了query与execute方法的使用区别,需要的朋友 ...

EFCore, 输出执行的Sql语句到控制台或者调试窗口

core 已经集成的各种日志功能,使用efcore时,只需要按情况引入相应的包即可,如果你用的是 core调试,那么可以引入 Microsoft.Extensions.Logging ...

2016/05/13 thinkphp 3.2.2 ① 数据删除及执行原生sql语句 ②表单验证

[数据删除及执行原生sql语句] delete()  返回受影响的记录条数 $goods -> delete(30);   删除主键值等于30的记录信息 $goods -> delete( ...

IBatis.Net获取执行的Sql语句

前言 IBatis.Net中Sql语句是些在配置文件中的,而且配置文件是在程序启动时读取的(我们开发的时候需要将其设置成较新复制或者是始终复制),而不是程序将其包含在其中(例如NHibernate的映 ...

vs2017 输出 ling to sql 转为执行的sql语句

在项目视图中,找到->输出 窗口,在窗口中选择ASP.NET Core Web服务器,调试项目即可看到执行的sql语句

mysql怎么终止当前正在执行的sql语句

mysql怎么终止当前正在执行的sql语句 show processlist; kill 要杀的ID kill 7

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

今天上班例行的查看了下服务器的运行状况,发现服务器特卡,是mysqld这个进程占用CPU到了99%导致的. 比较好奇是那个程序在使用mysql导致cpu这么高的,通过show processlist命 ...

tcpdump来抓取执行的sql语句

# tcpdump -n -nn -tttt -i eth1 -s 65535 'port 3306' -w tcpdump_mysql.ret -C 100 一个TCP包中包含多个mysql协议包, ...

监控mysql执行的sql语句

linux平台 监控mysql执行的sql语句   为了做好配合开发做性能和功能测试,方便监控正在执行的sql语句, 可以在/etc/mysqld中添加如下:  log =/usr/local/mys ...

随机推荐

[Nhibernate]二级缓存(二)

目录 写在前面 文档与系列文章 更新数据 二级缓存管理 总结 写在前面 本篇文章也算nhibernate入门系列的结尾了,在总结nhibernate系列的过程中,遇到了很多问题,学习的过程也是解决bu ...

GreenDao官方文档翻译(下)

第五篇 查询 查询会返回符合某些特定标准的实体.你可以使用原始的SQL定制查询语句,或者更好的方式:使用GreenDao的QueryBuilder API.该查询也支持lazy-loading的结果集 ...

ThinkPHP3.1.3的单字母函数汇总

A函数: 用于实例化Action 格式:[项目://][分组/]模块 /** * A函数用于实例化Action 格式:[项目://][分组/]模块 * @param string $name Acti ...

#pragma once 与 #ifndef 解析(转载)

正在入门驱动编程,遇到一个小问题,如下详细解释. 原文链接:#pragma once 与 #ifndef 解析 http://wwwblogs/hokyhu/archive/2009/0 ...

(转)JSON基础入门

更多推荐

thinkphp mysql 调试_Thinkphp 5 调试执行的SQL语句