[Laravel] 获取执行的Sql】的更多相关文章

获取数据库操作记录 $queries = DB::getQueryLog(); //取最后一条是 $lastSql = end($queries); 不过这样输出的,不是真正的sql,输出的是类似PDO的查询语句…
kettle job中的JavaScript如何获取同一个job中SQL步骤的执行语句并让执行语句记录在日志中呢?首先写日志需要用到job中JavaScript写日志的方法,其次是利用java反射机制获取执行的sql. 如: var sqlObj = getJobStep("SQL"); var sql = sqlObj.environmentSubstitute(sqlObj.getSQL()); var logWriter = org.pentaho.di.core.logging…
获取最后执行的sql语句 $str_order_action = db('order_action')->getLastSql(); //获取最后执行的sql语句 获取执行的sql语句 $order_sql = db('order_info')->fetchSql()->insertGetId($order_data); //获取执行的sql语句…
前言 IBatis.Net中Sql语句是些在配置文件中的,而且配置文件是在程序启动时读取的(我们开发的时候需要将其设置成较新复制或者是始终复制),而不是程序将其包含在其中(例如NHibernate的映射文件则是设成了嵌入式资源).很多时候我想获取程序执行了那些sql,当程序显示错误时,我们想跟踪sql,或者是查看sql是否正确,难道要我们去查看程序在跟踪到映射的配置文件查看吗.可以通过两种方式实现: 一.通过配置文件配置 为程序的配置文件(App.config或者web.config)文件中添加…
方法一: 我们有时候想测试一段代码生产的 SQL 语句,比如: 我们想看 App\User::all(); 产生的 SQL 语句,我们简单在 routes.php 做个实验即可: //app/Http/routes.php Route::get(‘/test-sql’, function() { DB::enableQueryLog(); $user = App\User::all(); return response()->json(DB::getQueryLog()); }); 然后我们在浏…
前言 为了便于精准排查问题,需要将当前的请求信息与当前执行的 SQL 信息设置对应关系记录下来,记录的 SQL 信息包括: 执行 SQL 的当前时间: 执行 SQL 的文件地址和行号: 执行 SQL 的花费时长: 执行 SQL 的影响行数: 执行的 SQL 语句: 数据库组件使用的是 GORM. 思路 1.在执行 SQL 前,设置开始执行时间(计算执行时长会用到): 2.在执行 SQL 后,第一,获取当前请求的上下文,为什么获取上下文,因为需要从上下文中获取本次请求信息,第二,获取 SQL 执行…
1.Yii2获取当前程序执行的sql语句: $query = model::find();         $dataProvider = new ActiveDataProvider([             'query' => $query,             'pagination' => [                 'pagesize' => '25',             ]         ]); //获取当前程序执行的sql语句 $query->…
\DB::connection()->enableQueryLog(); // 开启查询日志 \DB::table('xxx'); // 要查看的sql $queries = \DB::getQueryLog(); // 获取查询日志 print_r($queries); exit;// 即可查看执行的sql,传入的参数等等…
作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 片面了! 一月三舟,托尔斯泰说:"多么伟大的作家,也不过就是在书写自己的片面而已".何况是我,何况是我们! 虽然我们不书写文章,但我们写需求.写代码.写注释,当我们遇到了需要被讨论的问题点时,往往变成了争论点.这个好.那个差.你用的都是啥啥啥! 当你把路走窄了,你所能接受到的新的思路.新的想法.新的视野,以及非常重要的收入,也都会随之减少.只有横向对比.参考借鉴.查漏补缺…
执行原生 sql 返回结果集…
 在使用Laravel框架的时候,调试的时候,需要将查询的SQL输出校验,这是需要将SQL打印出来. 一.方法 DB::connection()->enableQueryLog();  // 开启查询日志 DB::table('my_table')->insert($data);        // 要查看的sql语句执行 $logs = DB::getQueryLog();                  // 获取查询日志 dd($logs);       // 即可查看执行的sql,传…
在spring与hibernate整合时进行数据库检索,执行原生sql: public AppointmentEvaluateVo searchMyfeedbackDetail(String accountId, String fbId) { String sql = "select ae.id as fbId ,ae.app_id as appId, a.app_no as appNo," + " si.service_item AS serItem,a.app_servi…
[本文原创,第一次离首页如此之近.发在候选区攒攒rp,管理员看着不合适可以撤下.] 虽然只在iBatis的世界里小打小闹匆匆数月,却历经数次与领导和同事激辩,再通过不懈努力学习和开发积累,楼猪终于被它小巧而不失强大,稳定而不失灵活所折服.作为80后顽固.偏执和nc一族,楼猪一向保守认为自己是美貌与智慧并存的.仗着天资聪慧,在之前的“iBatis.net直接执行sql语句”里曾经公然抱怨iBATIS对sql语句的直接查看灰常的不友好,调试不方便,排除错误非常考验眼神,很重要的一条(甚至应该算是楼猪…
以下是对Oracle中获取执行计划的几种方法进行了详细的分析介绍,需要的朋友可以参考下     1. 预估执行计划 - Explain PlanExplain plan以SQL语句作为输入,得到这条SQL语句的执行计划,并将执行计划输出存储到计划表中. 首先,在你要执行的SQL语句前加explain plan for,此时将生成的执行计划存储到计划表中,语句如下:explain plan for SQL语句然后,在计划表中查询刚刚生成的执行计划,语句如下:select * from table(…
一般获取执行计划有四种途径:1.执行explain plan,查询结果输出表.2.查询动态性能视图,它显示缓存在库缓存中的执行计划(有时查不出结果是因为执行计划已经不在库缓存中).3.查询AWR或Statspack表.4.启动提供执行计划的跟踪功能(set autotrace trace explain).使用得比较多的是第四种,简单又好用~本篇讲第一种方法. 首先,explainplan原理就是把一条SQL语句分析一下,将该语句的执行计划和相关信息存储到计划表(plan table)中.可以查…
在实际业务中经常需要拼接动态SQL来完成复杂数据计算,网上各类技术论坛都有讨论,比如下面这些问题: http://bbs.csdn.net/topics/390876591 http://bbs.csdn.net/topics/390981627 https://www.linkedin.com/groups/SQL-Query-Help-needed-137774.S.5948812806903119877?trk=groups_items_see_more-0-b-ttl http://bb…
第1章 Spark SQL 概述1.1 什么是 Spark SQL1.2 RDD vs DataFrames vs DataSet1.2.1 RDD1.2.2 DataFrame1.2.3 DataSet1.2.4 三者的共性1.2.5 三者的区别第2章 执行 Spark SQL 查询2.1 命令行查询流程2.2 IDEA 创建 Spark SQL 程序第3章 Spark SQL 解析3.1 新的起始点 SparkSession3.2 创建 DataFrames3.3 DataFrame 常用操…
from django.db.models import Avg from app01 import models annotate:(聚合查询) ret=models.Article.objects.values('up_count').annotate(a=Avg('comment_count')).values('up_count','a') #原理讲解:之前这个是按照这个up_count来分组的,后面这个是求这个平均的值,后面是打印出什么值出来, a=Avg('comment_count…
如果不想定义model,直接执行自定义SQL,可如下操作: 1. 通过 connections获取db连接,如果是多个数据库,connections['dbName'] 来选择 2. 获取游标 cursor 3. 执行sql: cursor.execute(sql) 4.获取返回结果:fetchone,fetchall (fetchall返回的是元祖,非字典) from django.db import connections cursor = connections['test_db'].cu…
转载自:https://my.oschina.net/liuyuantao/blog/712189 一般来说,最好用 Django 自带的模型来实现这些操作.这里仅仅只是为了学习使用原始 SQL 而做的练习. Django 提供了非常方便的数据管理模型 models,可以完成与数据库的基本操作.但有时,Django 原始的 models 的功能可能会不太够用,这些情况下可以直接绕过模型直接访问数据库. Django提供两种方式执行(performing)原始的SQL查询: Manager.raw…
extra()方法 结果集修改器,一种提供额外查询参数的机制 使用extra: 1:Book.objects.filter(publisher__name='广东人员出版社').extra(where=['price>50']) Book.objects.filter(publisher__name='广东人员出版社',price__gt=50) 2:Book.objects.extra(select={'count':'select count(*) from hello_Book'}) ra…
一    F查询与Q查询: 1 . F查询: 在上面所有的例子中,我们构造的过滤器都只是将字段值与某个常量做比较.如果我们要对两个字段的值做比较,那该怎么做呢? Django 提供 F() 来做这样的比较.F() 的实例可以在查询中引用字段,来比较同一个 model 实例中两个不同字段的值. 示例1: 查询评论数大于收藏数的书籍 from django.db.models import F models.Book.objects.filter(commnet_num__gt=F('keep_nu…
一.获取执行计划的6种方法(详细步骤已经在每个例子的开头注释部分说明了):1. explain plan for获取: 2. set autotrace on : 3. statistics_level=all;4. 通过dbms_xplan.display_cursor输入sql_id参数直接获取5. 10046 trace跟踪6. awrsqrpt.sql 二.适用场合分析 1.如果某SQL执行非常长时间才会出结果,甚至慢到返回不了结果,这时候看执行计划就只能用方法1,或者方法4调用现成的:…
ORM执行原生sql语句 在模型查询API不够用的情况下,我们还可以使用原始的SQL语句进行查询. Django 提供两种方法使用原始SQL进行查询:一种是使用raw()方法,进行原始SQL查询并返回模型实例:另一种是完全避开模型层,直接执行自定义的SQL语句. 执行原生查询 raw()管理器方法用于原始的SQL查询,并返回模型的实例: 注意:raw()语法查询必须包含主键. 这个方法执行原始的SQL查询,并返回一个django.db.models.query.RawQuerySet 实例. 这…
Entity Framework在使用时,很多时间操纵的是Model,并没有写sql语句,有时候为了调试或优化等,又需要追踪Entity framework自动生成的sql(最好还能记录起来,方便出错时排查) 方式一: 通过System.Data.Entity.DataBase.Log属性指定一个无返回值的委托,来实现记录日志的功能 public partial class EFContext<T> : DbContext where T : class { public EFContext(…
引言:为什么这样的需求,源自公司项目需要,公司的项目使用java的struts2+spring2.5+oracle中间件tuxedo,数据库用的是Oracle,但由于不直接连接数据库,用中间件处理的方式,又不希望有太多服务,所以就开始网络找资料整理编码了.大概花了一个多星期完成了这个任务,现在整理出来与大家分享,也是自己知识的梳理. 1.需要导入相关的jar包: [按字母顺序排列] antlr-2.7.5H3.jar 语言转换工,Hibernate利用它实现 HQL 到 SQL的转换 asm.j…
LoadRunner 执行单句SQL语句 Action() { int NumRows=0; int i=1; //建立数据库连接 lr_db_connect("StepName=DatabaseConnection", "ConnectionString=Provider=SQLOLEDB.1;Password=***;Persist Security Info=True;User ID=sc;Initial Catalog=EGMIS_NET;Data Source=19…
  Django ORM执行原生SQL # extra # 在QuerySet的基础上继续执行子语句 # extra(self, select=None, where=None, params=None, tables=None, order_by=None, select_params=None) # select和select_params是一组,where和params是一组,tables用来设置from哪个表 # Entry.objects.extra(select={'new_id':…
在模型操作中 ,为了更好的查明错误,经常需要查看下最近使用的SQL语句,我们可以用getLastsql方法来输出上次执行的sql语句.例如: User::get(1); echo User::getLastSql(); 输出结果是 SELECT * FROM 'think_user' WHERE 'id' = '1' 也可以使用fetchSql方法直接返回当前的查询SQL而不执行,例如: echo User::fetchSql()->find(1); 输出的结果是一样的. getLastSql方…
此例子是使用LINQ2Dapper封装,效率优于EntityFramwork,并且支持.NetFramework和.NetCore框架,只依赖于Dapper支持.net framework4.6.1及以上 支持.net core2.0及以上 目录 [LINQ2Dapper]最完整Dapper To Linq框架(一)---基础查询 [LINQ2Dapper]最完整Dapper To Linq框架(二)---动态化查询 [LINQ2Dapper]最完整Dapper To Linq框架(三)---实…