无法使用go_client放置GridDB容器

问题描述 投票:1回答:1

我正在尝试放入GridDB容器(我的网站上一个供用户使用的简单容器),但出现问题。

我已经确认go_client的示例代码可以正常工作,因此这不是构建不当或此类问题的问题。

func getAdminUsers(c echo.Context) error {
    var tmp []interface{}

    col, err1 := gridstore.GetContainer("users")
    if err1 != nil {
        fmt.Println("get container failed")
    }

col.SetAutoCommit(true)

// Create normal query
    query, err := col.Query("SELECT *")
    if err != nil {
        fmt.Println("create query failed")
    }
    //Execute query
    rs, err := query.Fetch(true)
    if err != nil {
        fmt.Println("create rs from query failed")
    }
    for rs.HasNext() {
        // Update row
        rrow, err := rs.NextRow()
        if err != nil {
            fmt.Println("NextRow from rs failed")
        }
        tmp = rrow
        fmt.Println("Person: name=", rrow[0], " status=", rrow[1], " count=", rrow[2], " lob=", rrow[3])
    }

    col.Commit()
    fmt.Println(tmp)
    return c.Render(http.StatusOK, "admin", "admin")
}

我的容器已正确写入,但由于某些原因查询无法正常工作。这是基本的代码,因此我希望某个地方缺少一些小细节。

截至目前,我在这里遇到错误:“获取容器失败”。我的错误可能是编写还是查询,尽管我怀疑这是来自查询。

database go nosql in-memory-database
1个回答
0
投票

您可以尝试使用CreateContainerInfo来初始化容器吗?如果不存在,它将创建容器,但是如果存在,则它是调用容器的更可靠的方法。

conInfo, _ := griddb_go.CreateContainerInfo("Users",
            [][]interface{}{
                {"email", griddb_go.TYPE_STRING},
                {"password", griddb_go.TYPE_BLOB}},
            griddb_go.CONTAINER_COLLECTION,
            true)
        col, _ := gridstore.PutContainer(conInfo, false)
© www.soinside.com 2019 - 2024. All rights reserved.