This Polygon object closes itself. Why is this insert still failing with Error 3037: Invalid GIS data?

♀尐吖头ヾ 提交于 2019-12-08 14:02:09

问题


After learning about this constraint about saving Polygon objects in mySql, I am still puzzled as to why the following insert fails with the same Error Code: 3037. Invalid GIS data provided to function st_geometryfromtext.

INSERT INTO myGeom (id, ogc_geom)
VALUES
  (
    1,
    GEOMFROMTEXT(
      'POLYGON((
    -85.4783714315732 9.8651106795296,
    -85.4784492156346 9.8654277853092, 
    -85.4783714315732 9.8651106795296))'
    )
  );

It closes itself, what bit is missing here (added one more point)?

A slightly modified version, that works...

-- WORKS !
INSERT INTO mygeom (id, ogc_geom)
VALUES
  (
    552,
    GEOMFROMTEXT(
      'POLYGON((
    -85.4783714315732 9.8651106795296,
    -85.4784492156346 9.8654277853092, 
    -85.85451248764512 10.1234567893214, 
    -85.4783714315732 9.8651106795296))'
    )
  );

回答1:


The first set of values contains only two points and forms line segment, not a polygon (plane figure).

(Sometimes formally it might be considered as 2-sided polygon, degenerate polygon with zero area, but it is mathematical formalism, not a common practice)



来源:https://stackoverflow.com/questions/44050320/this-polygon-object-closes-itself-why-is-this-insert-still-failing-with-error-3

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!