【发布时间】:2021-06-25 08:50:05
【问题描述】:
我目前正在使用 gorm 查询 GO 中的 MySql 数据库。我正在查询一个表,我只知道它的名字,不知道别的。出于这个原因,我从查询 []map[string]interface{} 返回,正如 gorm 文档中所建议的那样(查找地图,https://gorm.io/docs/advanced_query.html#Find-To-Map)。
我有以下问题:查询返回正确数量的元素,但是是空映射(例如[map[] map[] map[] map[]])。我不知道如何解决这个问题,有人可以帮助我了解问题所在吗?
谢谢。
编辑
代码示例:
db, err := gorm.Open("mysql", "connection_to_my_db")
[...]
var results []map[string]interface{}
err := db.Table("MyTable").Where("condition = ?", id).Find(&results).Error
if err != nil {
return nil, err
}
[...]
【问题讨论】:
-
你能显示你试过的代码吗?
-
基本上,代码与文档中的“查找地图”示例相同。我只设置了我的表名。它返回正确数量的元素,但它们是空的。
-
请你把它贴出来 - 让我们看看发生了什么?这是一个完整的工作示例,说明如何使用 scan to map[string]interface 方法:play.golang.org/p/3JyqfRXwSji
-
贴出的代码是我可以给你看的,对不起。
-
你能说明你在哪里定义了
results变量吗?