Как превратить столбцы sqlite lat / lon в пространственную геометрию?

15

У меня есть база данных sqlite с таблицей, в которой есть столбец для долготы и один для широты. Есть ли способ сделать эту базу данных «пространственной»?

Johannes
источник

Ответы:

17

Я описал процесс установки и пространственного включения базы данных sqlite здесь: SpatiaLite Quick Start . По сути, вам нужно получить init_spatialite-2.3.sql и запустить его на своей базе данных.

Затем вы можете создавать точечные геометрии, используя эту функцию:

MakePoint( x Double precision , y Double precision , [ , SRID Integer] ) : Geometry
Подземье
источник
спасибо, это хорошо сработало в сочетании с предложениями Джина.
Йоханнес
8

Во-первых, вам нужно включить пространственный контроль в вашей базе данных sqlite.

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

или

SELECT load_extension(libspatialite.so,dll ou dylib)

`

После этого вам нужно инициализировать вашу базу данных с помощью init_spatialite-2.3.sql

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

источник
2
Обратите внимание, что шаг init_spatialite-2.3.sql неприменим для пространственного объекта 3.0 или новее.
BradHards