spatailite数据库是对sqlite数据库的扩展,增加了对空间属性geometry的支持。shp数据可以导入到spatialite数据库中,用于移动端空间数据的存储。
spatialite-gui和spatialite-gis是两个用于操作spatialite数据库的工具,可以导入导出数据,比较好用。
下载地址:spatialite-gui,spatialite-gis
移动开发中用到spatialite可以在spatialite官网下载.so文件,里面封装了一些数据读写、空间操作的方法。
空间索引
spatialite数据库支持两种类型的索引,即R树索引和最小外包矩形索引。
R树索引创建方式:SELECT CreateSpatialIndex('layername', 'geometry')
最小外包矩形索引创建方式:SELECT CreateMbrCache('layername', 'geometry')
通过在spatialite-gui工具中执行上述语句,其中layername为要为其创建空间索引的图层名,geometry为空间字段的名称。
触发器
在移动端操作spatialite数据库的时候,对空间数据表(即有空间字段geometry的表)执行插入、修改、删除的时候会遇到执行不成功的情况,只是因为空间属性触发器的限制。如下图所示:ggi_region_Geometry、ggu_region_Geometry分别为插入和修改的触发器,只需将这两个触发器删除即可正常在移动端进行插入和修改操作。