luc*_*iet 23 database variadic-functions go
基本上在执行查询之后我想获取结果行并生成一个[]map[string]interface{},但我不知道如何使用API执行此操作,因为该Rows.Scan()函数需要一个特定数量的参数来匹配所请求的列数(可能还有类型)以及)正确获取数据.
同样,我想概括这个调用并接受任何查询并将其转换为a []map[string]interface{},其中map包含映射到该行的值的列名.
这可能非常低效,我计划稍后更改结构,这interface{}是单个数据点的结构.
我如何仅使用database/sql包,或者如果需要使用database/sql/driver包?
eli*_*rar 12
看看使用sqlx,它比标准的数据库/ sql库更容易做到这一点:
places := []Place{}
err := db.Select(&places, "SELECT * FROM place ORDER BY telcode ASC")
if err != nil {
fmt.Printf(err)
return
}
Run Code Online (Sandbox Code Playgroud)
您显然可以替换[]Place{}为a []map[string]interface{},但如果您知道数据库的结构,最好使用结构.您不需要像对待任何类型的断言那样进行任何类型的断言interface{}.
| 归档时间: |
|
| 查看次数: |
24712 次 |
| 最近记录: |