MySQL 데이터베이스에 이러한 방식으로 공간 데이터 삽입 :은 PHP()에서 데이터 형식 열을 I 점에 데이터를 삽입하려고
INSERT INTO table (coordinates) VALUES ("48.20 14.80");
또는
INSERT INTO table (coordinates) VALUES ("POINT(48.20 14.80)");
하고 그때마다 삽입 또는 업데이트하기 전에 트리거를인가 :
BEGIN
SET @lat = SUBSTRING(NEW.coordinates, 1, LOCATE(' ', NEW.coordinates));
SET @lng = SUBSTRING(NEW.coordinates, LOCATE(' ', NEW.coordinates) + 1);
SET @coor = PointFromWKB(POINT(@lat, @lng));
SET NEW.coordinates = @coor;
END
또는
BEGIN
SET NEW.coordinates = GEOMFROMTEXT(NEW.coordinates);
END
그러나 반환
는SQLSTATE[22003]: Numeric value out of range: 1416 Cannot get geometry object from data you send to the GEOMETRY field
당신의 사람이 문제가 무엇을 알고 있나요? 감사.
좌표 데이터 유형을 확인하십시오. – Gulshan