MySQL GORM 的原生查询功能
阅读更多:MySQL 教程
前言
在使用 Golang 的 ORM 框架 GORM 进行数据库操作时,有时会需要直接访问 MySQL 数据库的查询接口,这就需要使用 GORM 的原生查询功能。
GORM 原生查询
GORM 提供了一些原生的查询方法,如 Raw
和 Exec
等。其中,Raw
方法可以用于执行任意 SQL 语句,并将返回结果映射为 Golang 结构体;Exec
方法用于执行任意 SQL 语句,不需要返回任何结果。
Raw 方法
Raw
方法的定义如下:
其中,sql
参数是要执行的 SQL 语句,values...
是 SQL 语句中的参数。下面是一个示例:
在上面的示例中,我们查询了 users
表中年龄大于 18 岁的用户,并将查询结果映射为 User
结构体。
Exec 方法
Exec
方法的定义如下:
其中,sql
参数和 values...
参数的含义与 Raw
方法相同。下面是一个示例:
在上面的示例中,我们更新了 users
表中名字为 Tom
的用户的年龄为 20 岁。
总结
通过本文,我们了解了 GORM 的原生查询功能,包括 Raw
和 Exec
方法。使用这些方法,我们可以方便地访问 MySQL 数据库的查询接口,并进行数据库操作。