如何让gorm输出执行的sql - 码农教程


本站和网页 http://www.manongjc.com/detail/59-pyrkbfegpwkuhqi.html 的作者无关,不对其内容负责。快照谨为网络故障时之索引,不代表被搜索网站的即时页面。

如何让gorm输出执行的sql - 码农教程
首页
JAVA
PHP
HTML
CSS
CSS3
JAVASCRIPT
Sass
MYSQL
SQL
PL/SQL
SQLITE
REDIS
首页 > 编程笔记 > 其他 > 如何让gorm输出执行的sql
如何让gorm输出执行的sql
时间:2022-08-10
本文章向大家介绍如何让gorm输出执行的sql,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
1. 打印所有sql
在打开连接时设置日志级别为Info
DB, err = gorm.Open(mysql.Open(dsn), &gorm.Config{
Logger:logger.Default.LogMode(logger.Info),
})
2. 打印单条sql
在操作前加Debug(), 相当于将临时将日志级别改为Info
DB.Debug().Where("ID = ?", 52).First(&newData)
//输出
//[0.773ms] [rows:1] SELECT * FROM `User` WHERE ID = 52 ORDER BY `User`.`id` LIMIT 1
3. 只打印慢查询
slowLogger := logger.New(
//将标准输出作为Writer
log.New(os.Stdout, "rn", log.LstdFlags),
logger.Config{
//设定慢查询时间阈值为1ms
SlowThreshold: 1 * time.Microsecond,
//设置日志级别,只有Warn和Info级别会输出慢查询日志
LogLevel: logger.Warn,
},
DB, err = gorm.Open(mysql.Open(dsn), &gorm.Config{
Logger:slowLogger,
})
//输出类似
//2021/05/14 11:36:28 /home/ballqiu/go/gorm/mydb.go:98 SLOW SQL >= 1ms
//[2.996ms] [rows:1] INSERT INTO `User` (`name`,`age`,`is_admin`,`is_valid`,`login_time`) VALUES ('ball',0,true,false,'2021-05-14 11:36:28.436')
说明:
默认的SlowThreshold为200ms
如果你不想改变这个默认值,那么只需要将日志级别改为Warn即可只打印慢查询。
DB, err = gorm.Open(mysql.Open(dsn), &gorm.Config{
Logger:logger.Default.LogMode(logger.Warn),
})
随机文章
JVM快速入门
SQL学习之使用常用函数处理数据
Javascript快速入门(上篇)
SQL练习之不反复执行相同的计算
SQL练习之求解填字游戏
快速入门系列--WCF--08扩展与新特性
SQL练习之两个列值的交换
Parcel,零配置开发 React 应用!
像 React Native 开发 APP 一样,用wn-cli 开发 weapp (微信小程序)
正则表达式快速入门
JavaScript之<script>标签简介
数控机床数控系统选择4大关键要素
Python快速入门
Jquer学习之jQuery(function(){})与(function(){})(jQuery)之间的区别
本站知识点必读
JavaScript 教程
JavaScript 编辑工具
JavaScript 与HTML
JavaScript 与Java
JavaScript 数据结构
JavaScript 基本数据类型
JavaScript 特殊数据类型
JavaScript 运算符
JavaScript typeof 运算符
JavaScript 表达式
JavaScript 类型转换
JavaScript 基本语法
JavaScript 注释
Javascript 基本处理流程
Javascript 选择结构
Javascript if 语句
Javascript if 语句的嵌套
Javascript switch 语句
Javascript 循环结构
Javascript 循环结构实例
Javascript 跳转语句
Javascript 控制语句总结
Javascript 函数介绍
Javascript 函数的定义
Javascript 函数调用
Javascript 几种特殊的函数
JavaScript 内置函数简介
Javascript eval() 函数
Javascript isFinite() 函数
Javascript isNaN() 函数
parseInt() 与 parseFloat()
escape() 与 unescape()
Javascript 字符串介绍
Javascript length属性
javascript 字符串函数
Javascript 日期对象简介
Javascript 日期对象用途
Date 对象属性和方法
Javascript 数组是什么
Javascript 创建数组
Javascript 数组赋值与取值
Javascript 数组属性和方法
本网站教程列表:
JAVA教程
Java实例
JSP教程
Apache POI教程
EJB 教程
JDBC 教程
Spring 教程
PHP教程
Codeigniter教程
MYSQL 教程
Mysql 基础教程
SQL 教程
PL/SQL教程
SQLite 教程
Redis 教程
HTML 教程
CSS教程
CSS3 教程
CSS 参考手册
Javascript 教程
Bootstrap 教程
Sass 教程
最近更新
keras K.function获取某层的输出操作
浅谈sklearn中predict与predict_proba区别
解决Keras中循环使用K.ctc_decode内存不释放的问题
PDO::getAvailableDrivers讲解
PDO::_construct讲解
Yii2.0实现的批量更新及批量插入功能示例
PDO::inTransaction讲解
小程序前后端交互使用JWT
python文件操作seek()偏移量,读取指正到指定位置操作
使用OpenCV去除面积较小的连通域
使用vs code编辑调试php配置的方法
Python OpenCV去除字母后面的杂线操作
PDO::rollBack讲解
PyTorch的torch.cat用法
keras在构建LSTM模型时对变长序列的处理操作
Copyright (C) 2015 www.manongjc.com, All Rights Reserved. 版权所有 码农教程
备案号:鄂ICP备2022014784号-1