返回
Go实战笔记:使用GORM完成CURD操作
后端
2023-09-07 02:58:26
前言
Go是一种广受欢迎的编程语言,具有简洁、高效、并发性强的特点。它在许多领域都有广泛的应用,例如Web开发、系统编程、云计算等。GORM是一个优秀的Go语言的ORM框架,它可以帮助开发者轻松地实现数据库的CRUD操作。
本文将介绍如何使用GORM来完成CRUD操作。我们首先创建一个简单的Go项目,然后安装GORM。接下来,我们将创建一个模型,并使用GORM来操作数据库。
创建项目
首先,我们创建一个新的Go项目:
go mod init gorm-demo
这将创建一个名为gorm-demo
的目录,其中包含一个go.mod
文件。
安装GORM
接下来,我们需要安装GORM。我们可以使用以下命令:
go get gorm.io/gorm
这将在gorm-demo
目录中创建一个vendor
目录,其中包含GORM的代码。
创建模型
现在,我们需要创建一个模型。模型是一个类,它表示数据库中的一个表。在我们的例子中,我们将创建一个名为User
的模型,它表示user
表。
package models
import "gorm.io/gorm"
type User struct {
gorm.Model
Name string
Email string
}
User
模型包含三个字段:ID
、Name
和Email
。ID
字段是主键,它是一个自动生成的整数。Name
字段是一个字符串,它存储用户的姓名。Email
字段是一个字符串,它存储用户的电子邮件地址。
使用GORM操作数据库
现在,我们可以使用GORM来操作数据库。首先,我们需要创建一个数据库连接。我们可以使用以下代码:
package main
import (
"fmt"
"gorm.io/driver/sqlite"
"gorm.io/gorm"
)
func main() {
db, err := gorm.Open(sqlite.Open("gorm.db"), &gorm.Config{})
if err != nil {
panic(err)
}
// 迁移schema
db.AutoMigrate(&models.User{})
// 创建用户
user := &models.User{Name: "John Doe", Email: "john.doe@example.com"}
db.Create(user)
// 读取用户
var users []models.User
db.Find(&users)
for _, user := range users {
fmt.Println(user)
}
// 更新用户
db.Model(&user).Update("Name", "Jane Doe")
// 删除用户
db.Delete(&user)
}
这段代码首先创建一个数据库连接,然后迁移schema。接下来,它创建了一个用户,并将其保存到数据库中。然后,它读取所有用户,并打印它们。接下来,它更新了用户的姓名,最后删除了用户。
总结
在本文中,我们介绍了如何使用GORM来完成CRUD操作。我们首先创建了一个简单的Go项目,然后安装了GORM。接下来,我们创建了一个模型,并使用GORM来操作数据库。