导入
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)