From ce4d32530be8be851392fc90eb65545697e67b2e Mon Sep 17 00:00:00 2001 From: lingxin <961347548@qq.com> Date: Sat, 23 Mar 2024 09:21:26 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=8C=E6=97=B6=E5=BC=80=E4=B8=A4=E4=B8=AA?= =?UTF-8?q?=E4=BA=8B=E5=8A=A1=E7=9A=84=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lxDb/sql.go | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/lxDb/sql.go b/lxDb/sql.go index 45cf420..8c44100 100644 --- a/lxDb/sql.go +++ b/lxDb/sql.go @@ -375,3 +375,24 @@ var where = []string{ "Rr", "Ee", } + +// Transaction 同时开两个事务的方法 +func Transaction(txItem, txMain *gorm.DB, fun func(txItem, txMain *gorm.DB) (err error)) (err error) { + tx1 := txItem.Begin() + tx2 := txMain.Begin() + err = fun(tx1, tx2) + if err != nil { + tx1.Rollback() + tx2.Rollback() + return err + } + err = tx1.Commit().Error + if err != nil { + return + } + err = tx2.Commit().Error + if err != nil { + return + } + return +}