Возможно, я столкнулся с той же проблемой после обновления с Postgis 2.2 до 2.3, некоторые из моих запросов больше не работали.
Старый запрос:
SELECT ST_X(ST_TRANSFORM(ST_SETSRID(ST_MAKEPOINT($1,$2),$3),$4));
параметры запроса $ 1 ... $ 4:
602628,6663367,3857,3857
сообщение об ошибке:
"transform_geom: не удалось проанализировать выходную строку proj4: '3857': проекция без имени"
Причина:
ST_TRANSFORM выпускается в нескольких вариантах, два из них:
- public.st_transform (геометрия, целое число)
- public.st_transform (геометрия, текст)
Последний, я предполагаю, что новое в postgis 2.3, вызвало мою проблему, потому что 4 $ (3857) рассматривались как (proj4-) строка, а не как (SRID-) целое число.
Обходной путь в моем случае: подсказка типа для параметра $ 4
SELECT ST_X(ST_TRANSFORM(ST_SETSRID(ST_MAKEPOINT($1,$2),$3),$4::int));