Go 中 db.QueryRow().Scan 如何将结果集映射到 map?

go 中 db.queryrow().scan 如何将结果集映射到 map?

go 中 db.queryrow(sql).scan 如何将结果集映射到 map

问题:如何在 db.queryrow(sql).scan 中将结果集扫描到一个 map 中?

解答:

在 scan 之前,需要先初始化 map 提供内存地址。

示例代码:

func selectOne(id int) {
    // 初始化 map
    res := map[string]*interface{}{"id": nil, "name": nil, "password": nil, "add_time": nil}
    fmt.Println(res)

    sql := "select * from test where id = ?"
    err := db.QueryRow(sql, id).Scan(res["id"], res["name"], res["password"], res["add_time"])

    if err != nil {
        fmt.Println("获取数据失败:", err.Error())
    } else {
        fmt.Println(res)
    }
}

以上就是Go 中 db.QueryRow().Scan 如何将结果集映射到 map?的详细内容,更多请关注其它相关文章!