当前位置: 首页 > 工具软件 > u-orm > 使用案例 >

Golang-orm

拓拔弘亮
2023-12-01

导入

import (
  "github.com/jinzhu/gorm"
  _ "github.com/jinzhu/gorm/dialects/mysql"
)

连接mysql

连接形式:user:password@(localhost)/dbname?charset=utf8mb4&parseTime=True&loc=Local
	db, err := gorm.Open("mysql", "root@(127.0.0.1)/music?charset=utf8mb4&parseTime=True&loc=Local")
	if err != nil{
		fmt.Println("not connected")
	}
	defer db.Close()

结构体

自动映射一个名叫userinfos(复数形式表格)
// UserInfo 用户信息
type UserInfo struct {
	ID uint
	Name string
	Gender string
	Hobby string
}

更改对应表名

type User struct {
	ID string `orm:"column:id"`
	Password string `orm:"column:password"`
}

创建记录

	db.AutoMigrate(&User{})// 自动迁移
	db.SingularTable(true)//映射的数据库不为复数
	uu:=User{
		ID:      "150919124",
		Password: "123456",
	}
	// 创建记录
	db.Create(&uu)

查询记录

	var uu UserInfo
	db.Find(&uu, "hobby=?", "足球")
	db.Find(&uu, "hobby='足球'")
	m:= "足球"
	db.Find(&uu,db.Find(&uu, "hobby='"+m+"'"))
	fmt.Printf("%#v\n", uu)

更新

	u:=UserInfo{
		ID:1,
	}
	db.Model(&u).Update("hobby", "双色球")

删除记录

	u:=UserInfo{
		ID:1,
	}
	db.Delete(&u)
 类似资料: