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


15

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

Ответы:


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
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.