3 Star 2 Fork 1

fotomxq/weeekj_core

加入 Gitee
与超过 1400万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
update.go 1.20 KB
一键复制 编辑 原始数据 按行查看 历史
fotomxq 提交于 2023-12-09 23:58 +08:00 . 维可解框架正式开源
package CoreSQL
import (
"database/sql"
"errors"
"fmt"
"github.com/jmoiron/sqlx"
)
//UpdateOne 快速更新
func UpdateOne(db *sqlx.DB, query string, args interface{}) (result sql.Result, err error) {
defer func() {
if e := recover(); e != nil {
err = errors.New(fmt.Sprint("recover, ", e))
return
}
}()
tx := db.MustBegin()
if args == nil {
result, err = tx.Exec(query)
} else {
result, err = tx.NamedExec(query, args)
}
err = LastRowsAffected(tx, result, err)
if err != nil {
return
}
err = tx.Commit()
return
}
//UpdateOneSoft 支持软删除的更新
// 请确保query where部分为封闭设计,避免影响到追加的软删除指令标记
func UpdateOneSoft(db *sqlx.DB, query string, args interface{}) (result sql.Result, err error) {
defer func() {
if e := recover(); e != nil {
err = errors.New(fmt.Sprint("recover, ", e))
return
}
}()
tx := db.MustBegin()
if args == nil {
result = tx.MustExec(fmt.Sprint(query, " AND delete_at < to_timestamp(1000000)"))
} else {
result, err = tx.NamedExec(fmt.Sprint(query, " AND delete_at < to_timestamp(1000000)"), args)
}
err = LastRowsAffected(tx, result, err)
if err != nil {
return
}
err = tx.Commit()
return
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/fotomxq/weeekj_core.git
git@gitee.com:fotomxq/weeekj_core.git
fotomxq
weeekj_core
weeekj_core
v5.4.18

搜索帮助