У меня есть две таблицы src_pos и dest_pos.
src_pos хранит позиции с долготой, широтой и высотой, а dest_pos хранит объект PosGIS Geometry.
Теперь я хочу переместить несколькоданные из src_pos в dest_pos с помощью следующего сценария plpgsql.Но это не удалось, потому что переменная строки (например, row_data.longitude) не может быть правильно интерпретирована.Как я могу преодолеть эту проблему !?
--create language 'plpgsql';
drop function createPosition();
create function createPosition() returns integer AS
$$
DECLARE
updated INTEGER = 0;
row_data src_pos%ROWTYPE;
BEGIN
FOR row_data IN SELECT * FROM src_pos
LOOP
INSERT INTO dest_pos (coord) VALUES (ST_GeomFromText('POINT(row_data.longitude row_data.latitude row_data.altitude)', 4326));
updated := updated + 1;
END LOOP;
RETURN updated;
END;
$$
LANGUAGE 'plpgsql';