本文介绍了如何设置隔离级别的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想将隔离级别设置为可重复读取
。如何使用gorm orm来实现postgres。
I want to set isolation level to repeatable read
. How do I achieve this using gorm orm for postgres.
示例代码:
Example code:
func CreateAnimals(db *gorm.DB) err {
tx := db.Begin()
// Note the use of tx as the database handle once you are within a transaction
if err := tx.Create(&Animal{Name: "Giraffe"}).Error; err != nil {
tx.Rollback()
return err
}
if err := tx.Create(&Animal{Name: "Lion"}).Error; err != nil {
tx.Rollback()
return err
}
tx.Commit()
return nil
}
推荐答案
我有完全相同的问题:
func GetPageAfterUpdate(dp model.DbProvider, id int, update int, page *Page) (err error) {
tx := dp.DB().Begin()
err = tx.Exec(`set transaction isolation level repeatable read`).Error
if err != nil {
tx.Rollback()
return
}
与pg完全吻合
这篇关于如何设置隔离级别的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!