• 乐观锁Version

    乐观锁Version

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

    1. type User struct {
    2. Id int64
    3. Name string
    4. Version int `xorm:"version"`
    5. }

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

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