时间:2021-07-01 10:21:17 帮助过:5人阅读
②根据结构体生成数据库中的表。
func init() {
//设置数据库基本信息
orm.RegisterDataBase("default", "mysql", "root:admin@tcp(127.0.0.1:3306)/test?charset=utf8")
//映射model数据
orm.RegisterModel(new(User))
//生成表
orm.RunSyncdb("default", false, true)
}
2.ORM对象操作数据库
①插入
//1.有ORM对象
o := orm.NewOrm()
//2.有一个要插入数据的结构体对象
user := models.User{}
//3.对结构体对象赋值
user.Name = "111"
user.Pwd = "222"
//4.插入
_,err := o.Insert(&user)
if err!= nil {
beego.Info("插入失败",err)
return
}
②查询
//1.有ORM对象
o := orm.NewOrm()
//2.查询的对象
user := models.User{}
//3.指定查询对象字段值
user.Name = "111"
user.Id = 3
//4.查询-只有Id是参数可以省略
//err := o.Read(&user)
err := o.Read(&user, "Name", "Id")
if err != nil {
beego.Info("查询失败", err)
return
}
③更新
//1.有ORM对象
o := orm.NewOrm()
//2.查询要更新的结构体对象
user := models.User{}
//3.查询需要更新的数据
user.Id = 1
err := o.Read(&user)
//4.给数据重新赋值
if err == nil {
user.Name = "999"
//5.更新
num, err := o.Update(&user)
if err != nil {
beego.Info("更新失败", err)
return
}
beego.Info("更新成功,一共更新了:", num, "条")
}
④删除
//1.有orm对象
o := orm.NewOrm()
//2.删除的对象
user := models.User{}
//3.指定那一条对象删除
//user.Id = 2
//num, err := o.Delete(&user) //条件只有Id的话,不用加参数
user.Pwd = "222"
//4.删除
num, err := o.Delete(&user, "Pwd")
if err != nil {
beego.Info("删除失败", err)
return
}
beego.Info("删除成功,一共删除了:", num, "条")
以上。
Beego操作数据库
标签:指定 字段 有一个 database model run amp color ret