我有一个专栏让我对 MySQL Server 5.7.11 感到头疼。
它是 POINT
类型,我可以毫无问题地将其更改为 GEOMETRY
类型。
当我现在尝试将其从 GEOMETRY
更改为 POINT
时,出现以下错误:
错误 1416:无法从您发送到 GEOMETRY 字段的数据中获取几何对象 SQL 语句:ALTER TABLE
table
更改列
column_namecolumn_name
POINT NOT NULL;
我不明白为什么我可以用一种方式而不是另一种方式来改变它。
我一直在处理 POINT
数据类型时遇到问题,尤其是当我尝试执行 select 语句时,它有时会出现相同的错误。
最佳答案
“GEOMETRY 可以存储任何类型的几何值。其他单值类型(POINT、LINESTRING 和 POLYGON)将它们的值限制为特定的几何类型。”
因此您可以将 POINT 转换为 GEOMETRY - 但是因为 GEOMETRY 可以包含其他几何值,所以您不能采用其他方式。
https://dev.mysql.com/doc/refman/5.7/en/spatial-datatypes.html
关于MySQL 5.7 错误 : Cannot get geometry object from data you send to the GEOMETRY field,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39832575/