我试图从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(的错误扫描DEST类型切片(代码:2(另外,如果我用var测试演示替换var test []演示,我也不会遇到任何错误。
如果您呼叫,请获得它的期望只会返回一行。如果要选择多个行,请使用选择并将指针传递给切片。例如:
var rows []Demo
err := sqlx.Select(&rows, `SELECT * FROM "demo"`)
// ...