登录
首页 >  Golang >  Go问答

从数据库行在 Golang 中创建地图

来源:Golang技术栈

时间:2023-05-01 16:29:30 370浏览 收藏

欢迎各位小伙伴来到golang学习网,相聚于此都是缘哈哈哈!今天我给大家带来《从数据库行在 Golang 中创建地图》,这篇文章主要讲到golang等等知识,如果你对Golang相关的知识非常感兴趣或者正在自学,都可以关注我,我会持续更新相关文章!当然,有什么建议也欢迎在评论留言提出!一起学习!

问题内容

基本上在进行查询之后,我想获取结果行并生成 a []map[string]interface{},但我看不到如何使用 API 执行此操作,因为该Rows.Scan()函数需要与请求的列数(可能还有类型)匹配的特定数量的参数以及)正确获取数据。

同样,我想概括这个调用并接受任何查询并将其转换为 a []map[string]interface{},其中映射包含映射到该行的值的列名。

这可能非常低效,我计划稍后更改结构,以便这interface{}是单个数据点的结构。

我将如何仅使用 database/sql 包或如果需要 database/sql/driver 包来做到这一点?

正确答案

看看使用sqlx,它比标准的数据库/sql 库更容易做到这一点:

places := []Place{}
err := db.Select(&places, "SELECT * FROM place ORDER BY telcode ASC")
if err != nil {
    fmt.Printf(err)
    return
}

您显然可以[]Place{}用 a替换[]map[string]interface{},但如果您知道数据库的结构,最好使用 struct。您不需要像在interface{}.

好了,本文到此结束,带大家了解了《从数据库行在 Golang 中创建地图》,希望本文对你有所帮助!关注golang学习网公众号,给大家分享更多Golang知识!

声明:本文转载于:Golang技术栈 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>