首页 > 其他分享 >Gorm 错误处理

Gorm 错误处理

时间:2023-10-03 10:06:04浏览次数:39  
标签:错误 err ErrRecordNotFound Error 错误处理 Gorm First


在 Go 语言中,错误处理是很重要的。Go 语言中鼓励人们在任何 创建方法之后去检查错误。

错误处理


由于 GORM的链式 API,GORM 中的错误处理与惯用的 Go 代码不同,但它仍然相当容易。

如果发生任何错误,GORM 会将其设置为 * gorm.DB 的 Error 字段,你可以这样检查:

if err := db.Where("name = ?", "jinzhu").First(&user).Error; err != nil {
    // error handling...
}

或者

if result := db.Where("name = ?", "jinzhu").First(&user); result.Error != nil {
    // error handling...
}

 

ErrRecordNotFound error


当 First、Last、Take 方法找不到记录时,Gorm 会返回 ErrRecordNotFound 错误。如果发生了多个错误,你可以通过 errors.Is 判断错误是否为 ErrRecordNotFound,例如:

// 检查错误是否为 RecordNotFound
err := db.First(&user, 100).Error
errors.Is(err, gorm.ErrRecordNotFound)

标签:错误,err,ErrRecordNotFound,Error,错误处理,Gorm,First
From: https://blog.51cto.com/u_14035463/7689620

相关文章

  • golang 使用 gorm 查询数据 demo
    内容来自对chatgpt的咨询题目假设你有一张学生数据库表,需要通过golang的gorm查询某个id的学生实体查询demo在这段代码中,"student"变量是一个Student类型的结构体,用于存储查询结果。我们通过调用gorm.DB的Where方法和First方法,将第一个符合条件的结果存储到了"student"......
  • Gorm接口
    packagemainimport("encoding/json""gorm.io/driver/mysql""gorm.io/gorm""net/http""strconv")//新闻结构体typeNewsstruct{Idint`json:"id"`Titlestring`json:"titl......
  • go之gorm 框架
      go.gorm使用 GORM是一个Go语言的ORM库,用于简化数据库操作。它支持MySQL、PostgreSQL、SQLite和SQLServer等多种数据库,并提供了丰富的API,使得我们可以很方便地进行增删改查等操作。本文将介绍如何在GO中使用gorm,并提供一些示例代码。安装gorm在开始使用gorm之前......
  • gorm stdErr = sql: Scan error on column index 0, name "total": converting NULL
    前言使用gorm查询时,报错:stdErr=sql:Scanerroroncolumnindex0,name"total":convertingNULLtofloat64isunsupported代码如下vartotalfloat64res:=db.Model(&model.Record{}).Select("sum(amount)astotal").Where("id=?andtyp......
  • go-zero接入GORM并使用
    1.初始化数据库连接 2.建立模型3.配置GORMDB4.在RPC使用 5.启动RPC会看到如下结果 6.进行测试 ......
  • Golang 错误处理丶数组丶切片丶随机数
    一.错误处理1//错误处理2functestError(){3errorExec:=func(){4err:=recover()//recover是内置函数,可以捕获异常5iferr!=nil{//说明捕获到错误6fmt.Println("err=",err)7}8}9err......
  • 使用 gin 和 gorm 编写一个练手项目 todolist
    1.项目截图2.项目中用到的技术2.1.gin框架GinWebFramework-中文文档Gin框架介绍及使用2.2.gorm(Golang语言的ORM库)GORM指南2.3.前端画面主要是原生的htmlcssJavaScript,以及引入了JQuery3.运行项目3.1.项目地址https://github.com/wtraceback/......
  • python3类实例和错误处理
    类实例classCar(object):name="Car"def__init__(self,name):self.name=name#类方法通过@classmethod装饰器实现,只能访问类变量,不能访问实例变量;通过cls参数传递当前类对象,不需要实例化。@classmethoddefrun(cls,speed):......
  • Golang Gorm 一对多的添加
    一对多的添加有两种情况:一种是添加用户的时候同时创建文章其次是创建文章关联已经存在的用户添加用户的时候同时创建文章packagemainimport( "gorm.io/driver/mysql" "gorm.io/gorm")//User用户表一个用户拥有多篇文章typeUserstruct{ IDint64 Names......
  • 错误处理
    错误处理 axios.get('/user/12345').catch(function(error){if(error.response){//请求成功发出且服务器也响应了状态码,但状态代码超出了2xx的范围console.log(error.response.data);console.log(error.response.status);console.l......