Невозможно определить тип точки из PostGIS в Postgres (Golang с библиотекой pgx)

Я использую Go с библиотекой pgx для запроса из базы данных Postgres с помощью плагина PostGIS, но я не могу определить тип Point из PostGIS или, лучше сказать, в какой тип он подходит в 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?

0 ответов

Другие вопросы по тегам