Gorm| 豆包MarsCode AI刷题

37 阅读3分钟

1. 安装 GORM

首先,我们安装 GORM,Gorm是 Go 语言中一个非常流行的 ORM(对象关系映射)库。通过 ORM,我们可以使用 Go 语言的结构体直接映射到数据库的表,并且能够通过简洁的代码来执行增、删、改、查等数据库操作。

要安装 GORM,这里以mysql驱动为例,使用以下命令:

go get -u gorm.io/gorm
go get -u gorm.io/driver/mysql 

至此我们就安装好了所需的依赖。

2. 创建数据库和表结构

假设我们要创建一个 users 表,其中包含 idnameemail 字段。

我们可以使用以下 SQL 语句来创建数据库和表:

image.png 其中,id 是自增主键,nameemail 是用户的名字和邮箱,且不能为空。

3. 连接数据库

在 Go 代码中,我们通过 GORM 连接到 MySQL 数据库。我们使用 DSN格式来指定数据库的连接信息。GORM 提供了 mysql.Open(dsn) 方法来建立与 MySQL 的连接。当然,我们也可以将dsn中的信息存储在一个包中,以便修改。

dsn := "root:password@tcp(127.0.0.1:3306)/gorm_example?charset=utf8mb4&parseTime=True&loc=Local"
db, err := gorm.Open(mysql.Open(dsn), &gorm.Config{})
if err != nil {
	log.Fatalf("连接数据库失败: %v", err)
}
fmt.Println("数据库连接成功!")

image.png

4. 创建数据库表

GORM 允许我们通过结构体自动生成数据库表结构。这里,我们定义了一个 User 结构体,该结构体映射到 MySQL 数据库中的 users 表。

image.png 然后,使用 AutoMigrate 方法来创建表:

image.png

AutoMigrate 会自动根据定义的结构体来创建表格,保证数据库表与代码结构的一致性。

5. 增加数据(Create)

GORM 提供了 Create 方法来向数据库插入新数据。当我们要插入一个新用户时:

image.png

6. 查询数据(Read)

查询单个用户

要查询单个用户,可以使用 GORM 的 First 方法,根据用户的 ID 查找:

image.png

查询所有用户

要查询所有用户,可以使用 GORM 的 Find 方法,这会返回所有用户的记录。

7. 更新数据(Update)

更新单个字段

更新用户的名字是一个常见的操作。可以使用 Save 方法: save(&demo)

更新多个字段

如果需要同时更新多个字段(比如同时更新名字和邮箱),可以使用 Updates 方法:Updates(&demo)

8. 删除数据(Delete)

要删除某个用户,可以使用 GORM 的 Delete 方法:Delete(&demo)

总结

通过 GORM,我们可以简洁地完成与数据库的交互,包括创建表、插入数据、查询数据、更新数据以及删除数据。在实际开发中,GORM 还能处理更复杂的需求,如事务管理、关联查询、分页等。此外,GORM 提供了链式调用和丰富的查询功能,使得开发者可以更专注于业务逻辑,而不必关注过多的 SQL 细节。

希望这篇文章能帮助你更好地理解如何使用 GORM 进行数据库操作!