为什么mysql不接受几何体列的wkt值?

wkftcu5l  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(421)

我正在尝试将这个简单的wkt multipoint值转换为存储在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上,如果这很重要的话。

k0pti3hp

k0pti3hp1#

5.6版本的mysql似乎使用了另一种wkt格式。
在MySQL5.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
为了验证结果,MySQL5.6WKT格式也适用于较新的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

相关问题