mysql POINT列-尝试设置新字段

问题描述 投票:0回答:1

我正在尝试更新脚本,以便它使用POINT值而不是“纬度/经度”列来尝试帮助进行地理搜索(距离范围)。所以我有此专栏:

`point_test` point DEFAULT NULL

..我正尝试通过以下方式设置它:

UPDATE glinks_Links SET 
    point_test = POINT(52.35462 4.88227) WHERE ID = 3693134

但它给出了mySQL错误:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '4.88227) WHERE ID = 3693134' at line 2

我找到了有关空间点的博客文章,并建议运行此:

SELECT * FROM INFORMATION_SCHEMA.ST_SPATIAL_REFERENCE_SYSTEMS 

但我收到此错误:

#1109 - Unknown table 'ST_SPATIAL_REFERENCE_SYSTEMS' in information_schema

我是否需要在mysql.conf文件中打开空间?

FYI我正在运行mySQL Ver 14.14 Distrib 5.7.27

mysql spatial
1个回答
1
投票

在您的更新声明中,您错过了逗号。查询应如下所示,在经度和纬度之间使用逗号:

UPDATE glinks_Links SET point_test = POINT(52.35462, 4.88227) WHERE ID = 3693134;
© www.soinside.com 2019 - 2024. All rights reserved.