我正在尝试转换此简单的WKT多点值以存储在MySQL数据库的GEOMETRY列中
select ST_GeomFromText('MULTIPOINT ((-72.92788350000001 41.308274), (-72.996283 41.355198))');
它返回null。我不知道为什么-WKT本身似乎是有效的,例如,如果您在https://arthur-e.github.io/Wicket/sandbox-gmaps3.html上查看它
那么MySQL方面的局限性是什么?如何解决呢?谢谢。
这很重要,这是在MySQL 5.6上。
答案 0 :(得分:2)
似乎5.6的MySQL版本使用其他WKT格式。
在MySQL 5.6中,您需要使用MULTIPOINT (-72.92788350000001 41.308274, -72.996283 41.355198)
而不是MULTIPOINT ((-72.92788350000001 41.308274), (-72.996283 41.355198))
MySQL版本5.6.40
参见演示
https://www.db-fiddle.com/f/mddtN7MBTwPmKz1UoDMqVA/8
MySQL 8.0.11版
为了验证结果也很好,MYSQL 5.6 WKT格式也可以在较新的MySQL版本中使用。
参见演示
https://www.db-fiddle.com/f/mddtN7MBTwPmKz1UoDMqVA/11
还有MULTIPOINT (-72.92788350000001 41.308274, -72.996283 41.355198)
和MULTIPOINT ((-72.92788350000001 41.308274), (-72.996283 41.355198))
在https://arthur-e.github.io/Wicket/sandbox-gmaps3.html上都给出相同的观点