我得到一个mysql错误,说“address\u longi\u latit\u location”不能为空。“geomfromtext/pointfromtext”很可能返回null。这里怎么了?感谢您的帮助。
INSERT INTO address (ADDRESS_NICKNAME,ADDRESS_LONGI_LATIT_LOCATION)
VALUES ('Testing',geomfromtext('Point(10.20.45 34.23.79)'))
另一种方式
INSERT INTO address (ADDRESS_NICKNAME,ADDRESS_LONGI_LATIT_LOCATION)
VALUES ('Testing',pointfromtext('10.20.45 34.23.79'))
1条答案
按热度按时间50pmv0ei1#
按照规范
ST_geomFromText()
(geomfromtext()
是已弃用的同义词,不应使用它):如果几何参数为
NULL
或者不是语法结构良好的几何体,或者如果srid参数是NULL
,返回值为NULL
.事实上,你的论点在句法上并不完善,因为每个坐标都包含两个点。您可以用一个简单的方法来检查这一点:
结果(联机试用):
(空)
使用单点,它可以:
结果(真实在线)
aaaaaa ebaaayhbyobrojed129ebcx5bqa公司==
这同样适用于
ST_PointFromText(()
,但您仍然需要使用wkt格式,因此需要使用POINT()
也:结果(联机试用):
aaaaaa ebaaayhbyobrojed129ebcx5bqa公司==
基本上这两个功能是相同的,除了
pointfromtext()
强制点结果。