请问老师,如何加事务锁和回滚?
老师您好,我这里想对两张表进行新增和修改的操作,使用教程中的方法,可以成功添加。但是现在想要给这一系列操作加一个事务锁,任何报错都可以可以回滚表,想请教您一下,如果在教程的基础上,该如何写呢?谢谢老师!
//查看people是否存在
peopleModel := people.IdcardMd5GetPeople(idcard_md5)
if peopleModel.ID > 0 {
peopleModel.Photo = photo_url
rowsAffected := peopleModel.Save()
if rowsAffected == 0 {
response.Fail(c, make([]int, 0), "注册失败")
}
} else {
peopleModel = people.People{
Name: name_des,
Idcard: idcard_des,
Idcard_md5: idcard_md5,
Photo: photo_url,
}
peopleModel.Create()
if peopleModel.ID == 0 {
response.Fail(c, make([]int, 0), "注册失败")
}
}
_user := user.User{
People_id: peopleModel.ID,
Open_id: request.Openid,
Session_key: request.Sessionkey,
Phone: phone_des,
}
_user.Create()
if _user.ID > 0 {
response.Data(c, peopleModel.ID)
} else {
response.Fail(c, make([]int, 0), "创建用户失败")
}
查看
GORM
文档啊