0
点赞
收藏
分享

微信扫一扫

GORM实现MySQL数据表迁移、创建、查询


GROM是go的ORM类库,兼容多种数据库。

package main

import (
"fmt"
"log"

"gorm.io/driver/mysql"
"gorm.io/gorm"
)

func main() {
dsn := "user:pass@tcp(127.0.0.1:3306)/test?charset=utf8mb4&parseTime=True&loc=Local"
db, err := gorm.Open(mysql.New(mysql.Config{
DSN: dsn,
DefaultStringSize: 256,
}), &gorm.Config{})
if err != nil {
log.Fatal("数据库链接错误")
}

type User struct {
ID uint `gorm:"primaryKey"`
Name string
Age int
Gender string
}

// 创建users表
db.AutoMigrate(&User{})

// 创建数据
user := User{Name: "张三", Age: 18, Gender: "男"}
db.Create(&user)

// 批量插入
users := []User{
{Name: "李四", Age: 19, Gender: "男"},
{Name: "王五", Age: 20, Gender: "男"},
}
db.CreateInBatches(users, 2)

// 查询第一个
db.First(&user)

// 查询全部对象
db.Select("name").Where("age = ?", 20).Find(&users)
for _, user := range users {
fmt.Println(user.Name)
}

}

参考

​​https://learnku.com/docs/gorm/v2​​


举报

相关推荐

0 条评论