文章目录
1 CRUD
1.1 创建
1.1.1 单条创建
ctx := context.Background()
user,err := db.User.Create().
SetClass(classObj).
SetName("小红").
SetSex(false).
SetAge(12).
Save(ctx)
// SaveX()不会返回error类型
user:= db.User.Create().
SetClass(classObj).
SetName("小红").
SetSex(false).
SetAge(12).
SaveX(ctx)
1.1.2 批量创建
type studentData struct {
Name string
Age int
Sex bool
}
data := make([]studentData, 3)
data[0].Name = "小明"
data[1].Name = "小刚"
data[2].Name = "小李"
data[0].Age = 12
data[1].Age = 13
data[2].Age = 11
data[0].Sex = true
data[1].Sex = true
data[2].Sex = false
bulk := make([]*ent.UserCreate, len(data))
for i, d := range data{
bulk[i] := db.User.Create().SetName(d.Name).SetSex(d.Sex).SetAge(d.Age)
}
users, err := db.User.CreateBulk(bulk...).Save(ctx)
Create()的对象不立马保存,而是储存在切片中,之后再统一使用CreateBulk()的方法来批量创建数据
1.2 查找
1.2.1 查询单条 / 条件准确查询
user, err := db.User.Query().Where(user.Age(12)).First(ctx)
1.2.2 查询单条 / 条件模糊查询
user, err :