package main
import (
"fmt"
"gorm.io/driver/mysql"
"gorm.io/gorm"
)
type User struct {
ID uint
Name string
Age int
}
func main() {
dsn := "root:123456@tcp(192.168.17.41:3306)/department?charset=utf8mb4&parseTime=True&loc=Local"
// 连接数据库
db, err := gorm.Open(mysql.Open(dsn), &gorm.Config{})
if err != nil {
panic("无法连接数据库")
}
sqlDB, err := db.DB()
if err != nil {
panic("无法获取底层连接")
}
defer sqlDB.Close()
// 自动迁移数据库结构
db.AutoMigrate(&User{})
// 创建用户
user := User{Name: "Alice", Age: 25}
db.Create(&user)
// 查询用户
var retrievedUser User
db.First(&retrievedUser, user.ID)
fmt.Println("查询到的用户:", retrievedUser)
// 更新用户
db.Model(&retrievedUser).Update("Age", 26)
// 删除用户
db.Delete(&retrievedUser)
}