This repository has been archived on 2022-04-14. You can view files and clone it, but cannot push or open issues or pull requests.
manual-zh-CN/chapter-06/1.lock.md
2020-10-20 12:48:03 +08:00

473 B
Raw Permalink Blame History

乐观锁Version

要使用乐观锁需要使用version标记

type User struct {
    Id int64
    Name string
    Version int `xorm:"version"`
}

在Insert时version标记的字段将会被设置为1在Update时Update的内容必须包含version原来的值。

var user User
engine.ID(1).Get(&user)
// SELECT * FROM user WHERE id = ?
engine.ID(1).Update(&user)
// UPDATE user SET ..., version = version + 1 WHERE id = ? AND version = ?