gpt4 book ai didi

postgresql - 如何在 GoLang 的结构数组中分配一组行(从数据库中检索)?

转载 作者:数据小太阳 更新时间:2023-10-29 03:03:23 26 4
gpt4 key购买 nike

我正在尝试从 postgresql 中检索一组行,并尝试将其分配到一个结构数组中。我的代码是这样的:

var test []Demo
err := sqlx.Get(db,&test, `
select *
from demo
where id = $1`,
5,
)
if err != nil {
fmt.Println("Error",err)
fmt.Println("DatabaseExtraction Error")
return nil, errors.Wrap(err, "select error")
} else {
fmt.Println("No Extraction Error")
}

我有这样的结构:

type Demo struct {
ID int64 `db:"id"`
Name string `db:"name"`
}

但是我收到这样的错误结果中有 >1 列 (2) 的错误可扫描目标类型 slice (代码:2)如果我将 var test []Demo 替换为 var test Demo,我也不会收到任何错误。

最佳答案

如果您调用 Get,它预计只会返回一行。如果要选择多行,请使用 Select 并将指针传递给 slice 。例如:

var rows []Demo
err := sqlx.Select(&rows, `SELECT * FROM "demo"`)
// ...

关于postgresql - 如何在 GoLang 的结构数组中分配一组行(从数据库中检索)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49626549/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com