貔貅云原生

貔貅云原生

gorm使用

67
0
0
2023-09-26
gorm使用
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)
}