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))'
)
);
解决方案
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)