我收到错误
UPDATE treedetailsentered
set geom_line=st_geomfromtext('LineString(('||longitude||' '||latitude||','||lon2||' '||lat2||'))', 4326);
错误
ERROR: parse error - invalid geometry
HINT: "LineString((7" <-- parse error at position 13 within geometry
********** Error **********
这是我在表格中为线串
创建列的方式ALTER TABLE public.treedetailsentered
ADD COLUMN geom_line geometry(LineString, 4326)
答案 0 :(得分:0)
如果不知道longitude
,latitude
有哪种类型,很难说出确切的问题,但我的猜测是你没有形成正确的字符串。< / p>
我的建议是通过首先通过简单的查询创建正确的文本来调试这个:
select 'LineString(('||longitude||' '||latitude||','||lon2||' '||lat2||'))'
根据您的类型,您可能需要进行一些转换,例如:
select 'LineString(('||longitude::text||' '||latitude::text||','||lon2::text||' '||lat2::text||'))'
如果您已有文字,请确保数字格式正确。例如,浮点数应该有点小数点分隔符。
答案 1 :(得分:0)
我添加了一个额外的括号,我删除它对我有用。
UPDATE treedetailsentered set geom_line = ST_GeomFromText(&#39; LINESTRING(&#39; ||经度||&#39;&#39; ||纬度||&#39;,&#39; || lon2 ||&#39;&#39; || lat2 ||&#39;)&#39;,4326);