当前位置: 首页 > wzjs >正文

医药网站备案抄一则新闻四年级

医药网站备案,抄一则新闻四年级,青岛大型网站建设,wordpress地址 站点地址最近在编写一段代码的时候碰到了下面的一种情况那就是,在一个事务中插入一条数据,然后插入数据之后判断当前的插入是否生效,写的代码大概如下: return dao.db.WithContext(ctx).Transaction(func(tx *gorm.DB) error {err : tx.C…

最近在编写一段代码的时候碰到了下面的一种情况那就是,在一个事务中插入一条数据,然后插入数据之后判断当前的插入是否生效,写的代码大概如下:

return dao.db.WithContext(ctx).Transaction(func(tx *gorm.DB) error {err := tx.Clauses(clause.OnConflict{Columns:   []clause.Column{{Name: "key"}},DoNothing: true,}).Create(&record).Errorif err != nil {return err}if tx.RowsAffected == 0 {return nil}
})

结果后来发现,这段代码执行到:

if tx.RowsAffected == 0 {return nil
}

就自动结束了, 这里 tx.RowsAffected 实际指的是上一次 DB 操作的影响行数,但我查的是事务对象的属性,不是具体这条 Create 语句的影响行数。

在 GORM 里,RowsAffected 是属于 DB 实例(即 tx.Clauses(...).Create(&record) 返回的那个对象),而不是全局的 tx。

其实修改一下代码实现即可:

dbResult := tx.Clauses(clause.OnConflict{Columns:   []clause.Column{{Name: "key"}},DoNothing: true,
}).Create(&record)if dbResult.Error != nil {return dbResult.Error
}if dbResult.RowsAffected == 0 {return nil
}
http://www.dtcms.com/wzjs/52443.html

相关文章:

  • 做公益的网站关键词歌词图片
  • 在线制作二维码网站怎么做公众号
  • 做微信首图的网站网络营销公司排行
  • wpf 网站开发搜索引擎关键词广告
  • 幼儿园教育类网站模板下载代运营公司哪家好一些
  • 电子商务网站开发平台图搜索优化
  • 做网站的你选题的缘由是什么广告图片
  • 丰台做网站seo关键词排名公司
  • 绍兴公司网站建设 中企动力绍兴上海网络营销seo
  • 正规资质代办广州seo技术外包公司
  • wordpress 交易天津网站优化
  • 陕西公司网站建设爱站小工具计算器
  • wordpress 文章之显示标题常用seo站长工具
  • 公司做网站百度可以搜到吗seo描述是什么意思
  • 工信部公布网站备案拍照背景seo快速推广窍门大公开
  • 企业如何做网站建站百度搜索引擎介绍
  • dedecms导入网站模板seo关键词排名公司
  • 手机网站建设怎么样常见的网络营销模式
  • 网站一般用什么做的html简单网页代码
  • 重庆哪里可以做公司网站太原建站seo
  • 怎么去除自己做的网站百度云网页版入口
  • 手机网站建设哪儿好搜索引擎营销就是seo
  • 金华品牌网站建设seo薪资seo
  • 怎么建立一个网站让外国人浏览久久seo综合查询
  • 百度手机网站生成整站优化的公司
  • 给别人做网站别人经营违法免费宣传平台有哪些
  • 金平党建网站建设方案市场推广方案和思路
  • 建站程序免费下载搜索引擎营销分析
  • 常州哪家做网站便宜百度收录怎么弄
  • 网上购物的网站开发背景泰安网络推广培训