微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用Go界面获取雪花查询的查询ID

如何解决使用Go界面获取雪花查询的查询ID

我试图通过Golang来获取我正在雪花上执行的查询查询ID。执行查询后,在雪花UI上,我们获得了指向查询ID的链接以及结果。我不确定如何以编程方式获取查询ID。不知道我是否做对了,但这就是我所拥有的-使用连接字符串连接到雪花;使用此连接来执行查询。除了结果,我还希望查询ID。我是雪花的新手,对实现此目的的任何帮助将不胜感激。

import (
    "database/sql"
    "log"
)

var db *sql.DB

func init() {
    db,err := sql.Open("sNowflake","<connection string>")
    if err != nil {
        log.Fatal(err)
    }
}

func callDB() {
    type result struct {
        ID   string
        Name string
    }

    row := db.QueryRow("SELECT ID,NAME FROM EMPLOYEE") // get query id as well
    if err := row.Scan(&result.ID,&result.Name); err != nil {
        log.Fatal(err)
    }
    ...
    ...
    ...
}

func main() {
    callDB()
}

解决方法

您可以使用SnowflakeResultSnowflakeError获取查询ID,也可以直接向Snowflake提交查询,以使用SQL中可用的LAST_QUERY_ID函数。以下是一些参考文件供您使用:

https://docs.snowflake.com/en/sql-reference/functions/last_query_id.html

https://godoc.org/github.com/snowflakedb/gosnowflake

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。