gpt4 book ai didi

几何包的MySQL字符串编码

转载 作者:可可西里 更新时间:2023-11-01 09:04:33 25 4
gpt4 key购买 nike

我正在努力解决编码问题。

我有一个 MySQL 表,其中包含“多边形”列中的坐标列表。多边形都是不相交的。我想使用 ST_Contains() 函数来查找哪个多边形是一个点。这是我的 SQL 查询(x 和 y 是 double ):

SELECT id_polygon
FROM polygons
WHERE ST_Contains(polygon, POINT(x,y))
LIMIT 0,1;

当我尝试这个查询时,服务器响应一条错误消息:

ERROR 3055 (HY000): Geometry byte string must be little endian.

经过一些搜索,我修改了列的字符集:

ALTER TABLE polygones MODIFY polygone mediumtext CHARACTER SET utf16le;

但我仍然有同样的错误。我没主意了。 :/

如果您需要更多信息,请不要犹豫!

附言:我在下面粘贴了一个多边形条目的示例:

46.120052 4.926273,46.120692 4.921995,46.126637 4.921996,46.129165 4.909363,46.135851 4.909232,46.144537 4.91604,46.157977 4.903081,46.160961 4.904571,46.180433 4.910603,46.182715 4.914132,46.183046 4.932896,46.173769 4.938714,46.164259 4.932778,46.153246 4.958286,46.145964 4.943331,46.12938 4.939155,46.120871 4.931056,46.120052 4.926273

最佳答案

您的列应该是“多边形”或“几何”类型。如果您出于任何原因不能这样做,请使用此函数:ST_GeomFromText(polygon)。

关于几何包的MySQL字符串编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33440617/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com