打印 laravel 模型查询产品的 SQL
1.在路由閉包打印sql
打印一段代码生产的 sql 语句,使用路由闭包做个实验
Route::get('/get-sql', function() {
DB::enableQueryLog();
$data = App\Models\BusinessProduct::Enable(1)->get();
return response()->json(DB::getQueryLog());
});
在浏览器打开:http://127.0.0.1:8000/get-sql
[
{
"query":"select * from `fook_business_product` where `enable` = ?",
"bindings":[
1
],
"time":13.02
}
]
2.在controller打印sql
2.1定義路由
Route::group(['prefix' => 'admin'], function () {
$namespacePrefix="\\App\\Http\\Controllers\\Admin\\";
Route::get('/product',['uses' => $namespacePrefix . 'BusinessProductController@index', 'as' => 'index']);
});
2.2定時model
<?php namespace App\Models; use Illuminate\Database\Eloquent\Model; class BusinessProduct extends Model
{
protected $table = 'fook_business_product'; /**
* 是否有效(1、有效,0、無效 )
* @author jackie <2019.01.23>
*/
public function scopeEnable($query,$enable)
{
return $query->where('enable',$enable);
} }
2.3定義controller
<?php namespace App\Http\Controllers\Admin; use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\DB;
use App\Models\BusinessProduct; class BusinessProductController extends Controller
{
public function index()
{
DB::enableQueryLog();
$data = BusinessProduct::Enable(1)->first();
return response()->json(DB::getQueryLog()); }
}
2.4在瀏覽器打開:http://127.0.0.1:8000/admin/product
[
{
"query":"select * from `fook_business_product` where `enable` = ? limit 1",
"bindings":[
1
],
"time":12.42
}
]
打印 laravel 模型查询产品的 SQL的更多相关文章
- laravel 模型查询总结
1.Model::find($id);//查找主键为$id的数据 2.Model::find([$key1,$key2]);//使用双主键进行查找 3.Model::findOrFail($id);/ ...
- [Beego模型] 四、使用SQL语句进行查询
[Beego模型] 一.ORM 使用方法 [Beego模型] 二.CRUD 操作 [Beego模型] 三.高级查询 [Beego模型] 四.使用SQL语句进行查询 [Beego模型] 五.构造查询 [ ...
- django模型查询操作
一旦创建好了数据模型,Django就会自动为我们提供一个数据库抽象API,允许创建.检索.更新和删除对象操作 下面的示例都是通过下面参考模型来对模型字段进行操作说明: from django.db i ...
- EntityFramework Core 2.0执行原始查询如何防止SQL注入?
前言 接下来一段时间我们来讲讲EntityFramework Core基础,精简的内容,深入浅出,希望为想学习EntityFramework Core的童鞋提供一点帮助. EntityFramewor ...
- MyBatis学习总结(三)——多表关联查询与动态SQL
在上一章中我们学习了<MyBatis学习总结(二)——MyBatis核心配置文件与输入输出映射>,这一章主要是介绍一对一关联查询.一对多关联查询与动态SQL等内容. 一.多表关联查询 表与 ...
- laravel7 ORM和laravel模型操作
1.什么是ORM 对象关系映射(Object Relation Maping),这个关系就是关系数据库.因此,顾名思义,ORM的核心是我们通过操作对应来操作关系数据库. ORM的优点: ORM提供了 ...
- 将复杂查询写到SQL配置文件--SOD框架的SQL-MAP技术简介
引言 今天看到一片热门的博客, .NET高级工程师面试题之SQL篇 ,要求找出每一个系的最高分,并且按系编号,学生编号升序排列.这个查询比较复杂,也比较典型,自从用了ORM后,很久没有写过SQL语句了 ...
- 【T-SQL基础】01.单表查询-几道sql查询题
概述: 本系列[T-SQL基础]主要是针对T-SQL基础的总结. [T-SQL基础]01.单表查询-几道sql查询题 [T-SQL基础]02.联接查询 [T-SQL基础]03.子查询 [T-SQL基础 ...
- 08章 分组查询、子查询、原生SQL
一.分组查询 使用group by关键字对数据分组,使用having关键字对分组数据设定约束条件,从而完成对数据分组和统计 1.1 聚合函数:常被用来实现数据统计功能 ① count() 统计记录条数 ...
随机推荐
- Fastjson-fastjson中$ref对象重复引用问题:二
import java.util.ArrayList; import java.util.List; import com.alibaba.fastjson.JSON; import com.alib ...
- JVM垃圾回收(一)- 什么是垃圾回收
什么是垃圾回收? 垃圾回收是追踪所有正在被使用的对象,并标注剩余的为garbage.这里我们先从JVM的GC是如何实现的说起. 手动内存管理 在开始介绍垃圾回收之前,我们先复习一下手动内存管理.它是指 ...
- React文档(十三)思考React
在我们的看来,React是使用js创建大型快速网站应用的首要方法.它在Facebook和Instagram的使用已经为我们展现了它自己. React的一个很好的地方就在于当你创建应用的时候它使你思考如 ...
- linux系统下如何挂载NTFS移动硬盘
前言 数据迁移是我们经常会遇到的,有时候做大数据量迁移时,为了快速迁移大数据,有可能在Linux服务器上临时挂载NTFS格式的移动硬盘, 一般情况下,Linux是识别不了NTFS格式移动硬盘的(需要重 ...
- 微信小程序的布局css样式
微信小程序的布局css样式width: fit-content;font-size:20px; /*设置文字字号*/color:red; /*设置文字颜色*/font-w ...
- VSTO学习问题(一)
入门按照网上的写了第一个VSTO外接程序,点击运行按钮进行调试,发生错误: 名称: 从: file:///D:/Program Files (x86)/Microsoft Visual Studio ...
- JQ 关于each() 箭头函数报错的问题
- SSH登录异常(someone is doing something nasty)
在平时工作中,有时候需要SSH登陆到别的Linux主机上去,但有时候SSH登陆会被禁止,并弹出如下类似提示: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ...
- squid代理
概念 高性能dialing服务软件,作为前置缓存服务,用于替代用户向网站服务器请求页面数据并进行缓存. 默认占用端口3128.3401.4827 分类 从作用分类 ...
- git 的安装和使用及hithub同步
作业要求来自https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/2097 GitHub远程仓库的地址 https://github.com/ ...