无法从Postgres中的PostGIS确定点的类型带有pgx库的Golang

问题描述

我正在使用带有pgx库的Go来通过PostGIS插件从Postgres数据库查询,但是我无法确定PostGIS中Point的类型,或者更确切地说,它适合Golang中的哪种类型。

代码

    rows,err := db.conn.Query(context.Background(),"select * from point")
    if err != nil {
        return err
    }
    defer rows.Close()

    for rows.Next() {
        var uuid string
        var coordinate []float32
        err = rows.Scan(&uuid,&coordinate)
        if err != nil {
            log.Println(uuid)
            log.Println(coordinate)
        }
    }

    return rows.Err()

如预期的那样,出现以下错误

can't scan into dest[1]: cannot assign &{{2 2} 2} to *[]float32

发生错误是因为坐标是PostGIS点,而不是float32数组。在Go中可以归为哪种类型?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)