ORM框架 Object Relation Mapping
对象关系映射
作用:
- 通过对象创建表
- 通过对象操作数据库
目的:
不通过SQL语句来操作关系型数据库
ORM插入操作
- 创建orm对象
- 创建插入对象
- 给插入对象赋值
- 插入
// 创建orm对象
o := orm.NewOrm()
// 创建插入对象
stu := new(models.Stu)
// 给插入对象赋值
stu.Name = "zhangsan3"
stu.Num = "24"
// 插入
p, err := o.Insert(stu)
beego.Info(p, err)
ORM查询操作
- 创建orm对象
- 创建查询对象
- 给查询条件赋值
- 查询
查询的时候如果以主键查询,可以省略查询条件。如果以其他键查询,需要指定条件。
// 创建orm对象
o := orm.NewOrm()
// 创建查询对象
stu := new(models.Stu)
// 给查询条件赋值
stu.Id = 1
// 查询 查询的时候如果以主键查询,可以省略查询条件。如果以其他键查询,需要指定条件e.g.:r.Read(stu, "Name")
err := o.Read(stu)
beego.Info(err)
ORM修改数据
- 创建orm对象
- 创建更新对象
- 给更新对象赋值
- 查询这条数据是否存在
- 若存在,给查到的对象赋新值
- 更新
// 创建orm对象
o := orm.NewOrm()
// 创建更新对象
stu := new(models.Stu)
// 给更新对象赋值
stu.Num = "23"
// 查询这条数据是否存在
err := o.Read(stu, "Num")
if err != nil {
beego.Error("没有该数据!")
}
// 若存在,给查到的对象赋新值
stu.Num += "23"
// 更新
n, err := o.Update(stu)
if err != nil {
beego.Error("更新失败!")
}
beego.Info(n)
ORM删除数据
- 创建orm对象
- 创建删除对象
- 给删除对象赋值
- 删除
// 创建orm对象
o := orm.NewOrm()
// 创建删除对象
stu := new(models.Stu)
// 给删除对象赋值
stu.Num = "2323"
// 删除
n, err := o.Delete(stu, "Num")
if err != nil {
beego.Error("删除失败!!")
}
beego.Info(n)