[postgis-users] How to specify PostGIS geography value in a composite type literal?

Glen Huang heyhgl at gmail.com
Sat Apr 21 03:18:54 PDT 2018


Hi,

I asked this question on SO (https://stackoverflow.com/questions/49954323/how-to-specify-postgis-geography-value-in-a-composite-type-literal <https://stackoverflow.com/questions/49954323/how-to-specify-postgis-geography-value-in-a-composite-type-literal>)

but didn’t get much attention. I wonder if someone here could shed some light. 

Here is the question:

I have a custom composite type:

CREATE TYPE place AS (
    name text,
    location geography(point, 4326)
);
I want to create a value of that type using a composite literal:

SELECT $$("name", "ST_GeogFromText('POINT(121.560800 29.901200)')")$$::place;
This fails with:

HINT:  "ST" <-- parse error at position 2 within geometry
ERROR:  parse error - invalid geometry
But this executes just fine:

SELECT ST_GeogFromText('POINT(121.560800 29.901200)');
I wonder what's the correct way to specify PostGIS geography value in a composite type literal?

Thanks
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/postgis-users/attachments/20180421/87e723ca/attachment.html>


More information about the postgis-users mailing list