mysql怎么存x,y坐标

mysql怎么存x,y坐标,第1张

create table 'coordinate' {

`id` int(8) NOT NULL AUTO_INCREMENT,

`x` float(8) NOT NULL,

`y` float(8) NOT NULL

PRIMARY KEY (`id`)

}ENGINE=MyISAM DEFAULT CHARSET=utf8

然后INSERT INTO coordinate(id,x,y) VALUES(NULL,'123.4455','245.2435')

就存进去了

读的时候select * from coordinate

mysql4.1及以后版本包含了空间数据引擎,可以通过sql语句存取空间数据、进行空间查询。mysql的Spatial引擎使用OGC(Open GIS Consortium)定义的WKT(Well-Known Text)/WKB(Well-Known Binary)格式保存空间数据。mysql空间数据模型* Geometry (未支持) o Point (已支持) o Curve (未支持)+ LineString (已支持) # Line # LinearRing o Surface (未支持)+ Polygon (已支持) o GeometryCollection (已支持)+ MultiPoint (已支持)+ MultiCurve (未支持) # MultiLineString (已支持) + MultiSurface (未支持) # MultiPolygon (已支持) 更多的信息请查阅 mysql参考文档第18章(版本4.1.8,其他版本章节号可能有出入)应用实例geoTable表的结构字段 类型 id INT geo GEOMETRY建表SQL语句"CREATE TABLE geoTable (`id` int(11) NOT NULL auto_increment, `geo` geometry default NULL, PRIMARY KEY (`id`)) ENGINE=MyISAM"注意:只有MyISAM类型的表支持空间数据插入一条折线到geoTable表中INSERT INTO geoTable VALUES (GeomFromText(LINESTRING(0 0,1 1,2 2)))返回整个表的数据"SELECT id, AsText(geo) FROM geoTable"返回Polygon区域内的数据"SELECT id, AsText(geo) FROM geoTable WHERE MBRIntersects(GEO, GeomFromText('Polygon((...))'))"完整的应用实例可以查看开源webgis平台openmap的MysqlGeometryLayer.java文件


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/8751179.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-20
下一篇 2023-04-20

发表评论

登录后才能评论

评论列表(0条)

保存