2017-08-22 4 views
0

Donc je suis nouveau dans les fonctions ST_ dans MySQL et je pense qu'il me manque quelque chose. J'essaie de sauver un POLYGON dans MySql, le problème est que lors de l'utilisation de la fonction ST_GEOMFROMTEXT et donnant les coordonnées du POLYGONE pris de Google Maps Javascript API, il renvoie l'erreur: Invalid GIS data provided to function st_geometryfromtext.MySQL 5.7.19 Données SIG invalides fournies à la fonction st_geometryfromtext

J'ai lu beaucoup dans Internet, mais partout où il dit souvent qu'il est un problème de version, la chose ici est le je le plus récent en ce moment (5.7.19)

Ce sont les requêtes suivantes J'ai essayé

# WORKS 
SELECT ST_GEOMFROMTEXT('POLYGON((13.517837674890684 76.453857421875,13.838079936422464 77.750244140625,14.517837674890684 79.453857421875,13.517837674890684 76.453857421875,13.517837674890684 76.453857421875))'); 

# ALL BELLOW RETURN ERROR 
SELECT ST_GEOMFROMTEXT('POLYGON((19.4254572621497 -99.17182445526123, 19.42574056861496 -99.16570901870728, 19.421551629818985 -99.16558027267456, 19.421288552764135 -99.17210340499878))'); 
SELECT ST_GEOMFROMTEXT('POLYGON((-99.17182445526123 19.4254572621497, -99.16570901870728 19.42574056861496, -99.16558027267456 19.421551629818985, -99.17210340499878 19.421288552764135))'); 
SELECT ST_GEOMFROMTEXT('POLYGON((19.4249108840002 -99.17023658752441, 19.424951356518726 -99.16802644729614, 19.423393157277722 -99.16796207427979, 19.423393157277722 -99.17019367218018))') 

Est-ce que quelqu'un sait pourquoi ces requêtes échouent? Merci de tout le monde beaucoup

Répondre

1

S'il vous plaît essayer ces requêtes -

SELECT ST_GEOMFROMTEXT('POLYGON((19.4254572621497 -99.17182445526123, 19.42574056861496 -99.16570901870728, 19.421551629818985 -99.16558027267456, 19.421288552764135 -99.17210340499878, 19.4254572621497 -99.17182445526123))'); 
SELECT ST_GEOMFROMTEXT('POLYGON((-99.17182445526123 19.4254572621497, -99.16570901870728 19.42574056861496, -99.16558027267456 19.421551629818985, -99.17210340499878 19.421288552764135, -99.17182445526123 19.4254572621497))'); 
SELECT ST_GEOMFROMTEXT('POLYGON((19.4249108840002 -99.17023658752441, 19.424951356518726 -99.16802644729614, 19.423393157277722 -99.16796207427979, 19.423393157277722 -99.17019367218018, 19.4249108840002 -99.17023658752441))') 
+0

qui l'a fait, la fermeture du point final répéter d'abord. Je vous remercie! – mkmnstr