Como transformar colunas sqlite lat / lon em geometria espacial?


15

Eu tenho um banco de dados sqlite com uma tabela que tem uma coluna para longitude e outra para latitude. Existe uma maneira de tornar esse banco de dados 'espacial'?

Respostas:


17

Descrevi o processo de instalação e ativação espacial de um banco de dados sqlite aqui: SpatiaLite Quick Start . Basicamente, você precisa obter o init_spatialite-2.3.sql e executá-lo no seu banco de dados.

Você pode criar geometrias de pontos usando esta função:

MakePoint( x Double precision , y Double precision , [ , SRID Integer] ) : Geometry

obrigado, que funcionou bem em combinação com as sugestões de Gene.
Johannes

8

primeiro, você precisa ativar o espacial no seu banco de dados sqlite

sqlite> .load 'libspatialite.so,dll or dylib'   

ou

SELECT load_extension(libspatialite.so,dll ou dylib)

`

Depois disso, você precisa inicializar seu banco de dados com init_spatialite-2.3.sql

sqlite> .read '~/init_spatialite-2.3.sql'

2
Observe que a etapa init_spatialite-2.3.sql não é aplicável ao spatialite 3.0 ou posterior.
BradHards
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.