首页 >后端开发 >Golang >如何在 Go 中从 GORM 访问底层 MySQL 查询日志?

如何在 Go 中从 GORM 访问底层 MySQL 查询日志?

Linda Hamilton
Linda Hamilton原创
2024-12-13 12:49:10189浏览

How to Access the Underlying MySQL Query Log from GORM in Go?

使用 GORM 访问 Golang 中的底层 MySQL 查询

问题:

我怎样才能获取GORM库生成的SQL查询日志?在开发环境中,查看已执行的 MySQL 查询可能很有价值。

解决方案:

选项 1:使用 gorm.Debug()

快速解决方案是使用 gorm.Debug() 方法,该方法可以在开发和生产中启用查询日志记录环境:

gorm.Debug().Find(&todos)
gorm.Debug().Preload("User").Find(&todos)

选项 2:使用 db.LogMode()

更受控制的方法是在底层数据库上使用 db.LogMode() 方法联系。这提供了仅在开发环境中选择性启用查询日志记录的能力:

db, err := Open(dbType, connectionDSN)
db.LogMode(true)

通过使用 db.LogMode(true),将记录使用此数据库连接执行的所有后续查询。这种方法允许开发人员在需要时显式启用查询日志记录,而不影响生产环境。

以上是如何在 Go 中从 GORM 访问底层 MySQL 查询日志?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn