PostGis: тип геометрии (LineString) не соответствует типу столбца (Polygon) - PullRequest
0 голосов
/ 09 июля 2020

Я немного потерялся в этом случае.

Позвольте мне объяснить: сейчас я делаю запрос к таблице и, как ни странно, получил эту ошибку

sqlalchemy.exc.DataError: (psycopg2.errors.InvalidParameterValue) Geometry type (LineString) does not match column type (Polygon)

Однако мой table и ее данные не должны содержать в себе элемента LineString (однако данные не генерируются мной, поэтому здесь может быть ошибка). Так что я не знаю, как найти плохого парня, который вызвал это, или как лечить это.

Данные таблицы, из которых он исходит, имеют такую ​​структуру (мы называем ее table_1): Новые данные таблицы (мы называем ее table_2):

created_on         |         updated_on         |   id  | polygon 

Чтобы проверить, было ли одно из данных LineString, я пробую следующий запрос:

SELECT count(id)  FROM table_1 WHERE ST_GeometryType(polygon::geometry)='ST_LineString';
 count
-------
     0
(1 row)

И чтобы убедиться, что я выполняю тот же запрос по логической геометрии, которая должна быть там, и я получаю следующее:

SELECT count(id)  from table_1 WHERE ST_GeometryType(polygon::geometry)='ST_Polygon';
 count
-------
  5191
(1 row)
SELECT count(*)  from table_1 ;
 count
-------
  5191
(1 row)

Итак, я немного потерялся, спасибо всем за помощь Если я сделал глупую ошибку, позвольте мне знаю хаха

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...