实践记录:GORM与数据库的连接
GORM是一个流行的Go语言ORM(对象关系映射)库,它提供了简单而强大的方式来连接和操作数据库。
当使用Go语言开发Web应用时,连接数据库是一个常见的任务。通过学习课程——《Go 框架三件套详解(Web/RPC/ORM)》,我对于GO的框架有了大致的了解。本篇课程笔记用于记录自己通过课程的学习和查找资料学习后,使用GORM连接数据库,并实现增删改查操作的实践过程。
首先,我们需要在Go项目中引入GORM库。可以使用以下命令来安装GORM:
go get -u gorm.io/gorm
接下来,我们需要选择一个数据库驱动程序。GORM支持多种数据库,例如MySQL、PostgreSQL、SQLite等。我自己使用的是MySQL。可以使用以下命令来安装MySQL驱动程序:
go get -u gorm.io/driver/mysql
然后可以开始编写代码了。首先,我们需要创建一个数据库连接。在GORM中,可以使用gorm.Open函数来连接数据库。以下是一个示例:
import (
"gorm.io/driver/mysql"
"gorm.io/gorm"
)
func main() {
dsn := "user:password@tcp(localhost:3306)/database_name?charset=utf8mb4&parseTime=True&loc=Local"
db, err := gorm.Open(mysql.Open(dsn), &gorm.Config{})
if err != nil {
panic("Failed to connect to database")
}
defer db.Close()
// 连接成功,可以进行增删改查操作
}
在上面的代码中,dsn是数据库连接字符串,其中包含用户名、密码、主机、端口和数据库名称等信息。请根据实际情况修改这些值。
连接数据库成功后,我们可以执行各种数据库操作。以下是一些常见的增删改查的示例:
- 创建表和模型:
type User struct {
ID uint
Name string
Age int
}
// 自动创建表
db.AutoMigrate(&User{})
- 插入数据:
user := User{Name: "John", Age: 30}
db.Create(&user)
- 查询数据:
var users []User
db.Find(&users)
- 更新数据:
db.Model(&user).Update("Age", 40)
- 删除数据:
db.Delete(&user)
GORM提供了更多强大的功能,例如条件查询、关联查询、事务处理等。你可以查阅GORM的官方文档以了解更多信息。
在编写完代码后,可以使用go run命令来运行程序,测试数据库连接和操作是否正常。
总结起来,使用GORM连接数据库并实现增删改查操作相对简单。通过引入GORM库、选择数据库驱动程序、创建数据库连接,并使用GORM提供的API来执行各种数据库操作,我们可以轻松地在Go项目中使用ORM来管理数据库。