技术栈

获取GORM执行时的sql字符串

招手熊2024-08-12 20:29

示例:

go 复制代码
import "log"
func GetDetail(tx *gorm.DB,id int)(data any,err error){
	var query = tx.Session(&gorm.Session{DryRun: true})
	err = query.Where("id = ?", id).First(&res).Error
	if err!=nil{
		zap.L().Error("get detail error",zap.Error(err),zap.String("sql",query.Statement.SQL.String()))
	}
}

注意事项:

  1. 执行前需要事先声明Session,将DryRun设置为true
  2. 执行完First、Find、Delete 等方法后才能拿到SQL
上一篇:有几种方法可以从 Windows 连接到 macOS 云主机,例如 VNC、Teamviewer 等。
下一篇:魔塔社区的Modelscope中无法import_AutoModel的问题
相关推荐
s***453
17 小时前
Linux 下安装 Golang环境
linux·运维·golang
b***6532
18 小时前
GO 快速升级Go版本
开发语言·redis·golang
7***3188
19 小时前
Go-Gin Web 框架完整教程
前端·golang·gin
4***1754
19 小时前
Linux 下安装 Golang环境
linux·运维·golang
ヽ格式化
19 小时前
一文读懂栈与堆:从生活例子到Golang/PHP内存管理实践
golang·php·生活
世界尽头与你
1 天前
Go pprof 调试信息泄露漏洞
安全·网络安全·golang·渗透测试
小信啊啊
1 天前
Golang结构体内存布局
golang
6***v417
1 天前
搭建Golang gRPC环境:protoc、protoc-gen-go 和 protoc-gen-go-grpc 工具安装教程
开发语言·后端·golang
水痕01
1 天前
go使用cobra来启动项目
开发语言·后端·golang
热门推荐
01GitHub 镜像站点02BongoCat - 跨平台键盘猫动画工具03【保姆级教程】免费使用Gemini3的5种方法!免翻墙/国内直连04UV安装并设置国内源05安娜的档案(Anna’s Archive) 镜像网站/国内最新可访问入口(持续更新)06Linux下V2Ray安装配置指南07Labelme从安装到标注:零基础完整指南08“我的电脑”图标没了怎么办 4种方法找回09全球最强模型Grok4,国内已可免费使用!(附教程)10Google Antigravity:无法登录?早期错误、登录修复和用户反馈指南