Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

database/gdb: Inconsistency in the err returned when no data is queried during the query #3552

Open
wln32 opened this issue Apr 29, 2024 · 0 comments
Labels
bug It is confirmed a bug, but don't worry, we'll handle it.

Comments

@wln32
Copy link
Member

wln32 commented Apr 29, 2024

Go version

1.22

GoFrame version

2.7.0

Can this bug be reproduced with the latest release?

Option Yes

What did you do?

1.当Scan的参数是指针的时候,也就是*Result,没有查询到数据,返回sql.ErrNoRows

var results Result
q := g.DB("default").Model("results").Where("1!=1")
err := q.Scan(&results)
fmt.Println("err=", err)
  1. 当Scan的参数是二级指针的时候,也就是**Result,没有查询到数据,没有返回sql.ErrNoRows
var results *Result
q := g.DB("default").Model("results").Where("1!=1")
err := q.Scan(&results)
fmt.Println("err=", err)

3.当Scan的参数是*[]Result或者*[]*Result的时候,没有查询到数据,没有返回sql.ErrNoRows

var results []*Result
q := g.DB("default").Model("results").Where("1!=1")
err := q.Scan(&results)
fmt.Println("err=", err)

建议统一返回错误,或者不返回错误比较好点

What did you see happen?

err= sql: no rows in result set
err= nil
err= nil

What did you expect to see?

err= nil
err= nil
err= nil

或者
err= sql: no rows in result set
err= sql: no rows in result set
err= sql: no rows in result set

@wln32 wln32 added the bug It is confirmed a bug, but don't worry, we'll handle it. label Apr 29, 2024
@Issues-translate-bot Issues-translate-bot changed the title database/gdb: 关于查询时没有查询到数据返回的err不一致 database/gdb: Inconsistency in the err returned when no data is queried during the query Apr 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug It is confirmed a bug, but don't worry, we'll handle it.
Projects
None yet
Development

No branches or pull requests

1 participant