1. 程式人生 > >spatialite資料庫在移動端的使用---空間索引和觸發器限制

spatialite資料庫在移動端的使用---空間索引和觸發器限制

      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分別為插入和修改的觸發器,只需將這兩個觸發器刪除即可正常在移動端進行插入和修改操作。