有没有一种简单的方法可以在Golang中将数据库行转换为JSON
发布时间:2020-12-16 09:26:52 所属栏目:大数据 来源:网络整理
导读:目前我所看到的是,将数据库行转换为 JSON或转换为[] map [string] interface {}并不简单.我必须创建两个切片,然后遍历列并每次创建密钥. ……一些代码 tableData := make([]map[string]interface{},0) values := make([]interface{},count) valuePtrs := mak
目前我所看到的是,将数据库行转换为
JSON或转换为[] map [string] interface {}并不简单.我必须创建两个切片,然后遍历列并每次创建密钥.
……一些代码 tableData := make([]map[string]interface{},0) values := make([]interface{},count) valuePtrs := make([]interface{},count) for rows.Next() { for i := 0; i < count; i++ { valuePtrs[i] = &values[i] } rows.Scan(valuePtrs...) entry := make(map[string]interface{}) for i,col := range columns { var v interface{} val := values[i] b,ok := val.([]byte) if ok { v = string(b) } else { v = val } entry[col] = v } tableData = append(tableData,entry) } 这有什么包裹吗?或者我在这里遗漏了一些基础知识 解决方法
我正在处理同样的问题,就我的调查而言,看起来没有别的办法.
我见过的所有软件包使用的方法基本相同 你应该知道几件事,希望能节省你的时间: > database / sql包将所有数据转换为适当的类型 您可以使用社区编写的工具来减轻开销: >围绕数据库/ sql的简约包装器,sqlx,在内部使用与反射类似的方式. 如果您对潜水更感兴趣,请查看: >在sqlx包中使用反射,sqlx.go第560行 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |