2016-09-24 27 views
1

我對多面體字段的理解是 - 一個字段,可以保存關於單個單元格中多個多邊形的信息。向MySQL多面體數據類型字段中插入值時出錯

我的表結構 -

CREATE TABLE `test_table` (
    `key` int(11) NOT NULL AUTO_INCREMENT, 
    `selected_polygon` multipolygon DEFAULT NULL, 
    PRIMARY KEY (`key`) 
) ENGINE=MyISAM DEFAULT CHARSET=latin1; 

我想下面的數據插入到一個多面場 -

SET @g ='MULTIPOLYGON(((45.55215127678357 -122.65701296506451, 
45.52329405876074 -122.63572695432232, 
45.52473727138698 -122.56156923947856, 
45.54397656857749- 122.56088259397076, 
45.559363267325914 -122.60345461545514, 
45.56224780438123 -122.65220644650982, 
45.55215127678357 -122.65701296506451)))'; 

INSERT INTO test_table(selected_polygon) VALUES (GeomFromText(@g)); 

以下錯誤每次我得到我試圖執行上述聲明 -

錯誤代碼:3037.無效的GIS數據提供給功能 st_geometryfromtext。

回答

1

當你看到你的數據時,有一個很難察覺的細微錯誤。

SET @g ='MULTIPOLYGON(((45.55215127678357 -122.65701296506451, 
45.52329405876074 -122.63572695432232, 
45.52473727138698 -122.56156923947856, 
45.54397656857749 -122.56088259397076, 
45.559363267325914 -122.60345461545514, /* this line had - in wrong place */ 
45.56224780438123 -122.65220644650982, 
45.55215127678357 -122.65701296506451)))'; 

請使用上述內容。