Чтобы включить пространственные функции существующей базы данных SQLite, используйте один из следующих способов:
- Установите SpatiaLite. См. документацию к SpatiaLite для получения сведений о добавлении SpatiaLite в базу данных SQLite.
- Используйте SQL для загрузки библиотеки ST_Geometry и создайте тип ST_Geometry в существующей базе данных SQLite.
- Используйте SQL для загрузки библиотеки ST_Geometry и создайте OGC GeoPackage.
Добавление таблиц ST_Geometry в SQLite
Чтобы добавить системные таблицы ST_Geometry в существующую базу данных SQLite, требуется следующее:
- Файл базы данных должен иметь расширение .sqlite; если у базы данных, которую вы будете использовать, другое расширение, переименуйте ее. Например, если база данных называется projdata.d1, переименуйте ее в projdata.sqlite, прежде чем добавить тип ST_Geometry.
- База данных не может содержать другой пространственный тип.
- Библиотека ST_Geometry Esri должна быть доступна в редакторе SQL, из которого вы ее загружаете. Вы можете приобрести эту библиотеку на My Esri (загрузите zip-файл поддержки базы данных).
- Если необходимо, переименуйте файл этой базы данных и присвойте ему расширение .sqlite.
- Подключитесь к базе данных с помощью редактора SQL, например, sqlite3.exe.
- Загрузите библиотеку ST_Geometry.
В этом примере библиотека ST_Geometry загружается в базу данных SQLite на компьютере Microsoft Windows.
SELECT load_extension('stgeometry_sqlite.dll','SDE_SQL_funcs_init');
В этом примере библиотека ST_Geometry загружается в базу данных SQLite на компьютере Linux.
SELECT load_extension('libstgeometry_sqlite','SDE_SQL_funcs_init');
- Вызовите функцию CreateOGCTables для добавления таблиц ST_Geometry в базу данных.
SELECT CreateOGCTables();
Создание GeoPackage
Для преобразования существующей базы данных SQLite в GeoPackage необходимо следующее:
- Файл базы данных должен иметь расширение .gpkg; если у базы данных, которую вы будете использовать, другое расширение, переименуйте ее. Например, базу данных с именем study.db переименуйте в study.gpkg перед тем, как преобразовать ее в GeoPackage.
- База данных не может содержать другой пространственный тип.
- Если необходимо, переименуйте файл этой базы данных и присвойте ему расширение .gpkg.
- Подключитесь к базе данных с помощью редактора SQL, например, sqlite3.exe.
- Загрузите библиотеку ST_Geometry.
В этом примере библиотека ST_Geometry загружается в базу данных SQLite на компьютере Windows.
SELECT load_extension('stgeometry_sqlite.dll','SDE_SQL_funcs_init');
В этом примере библиотека ST_Geometry загружается в базу данных SQLite на компьютере Linux.
SELECT load_extension('libstgeometry_sqlite','SDE_SQL_funcs_init');
- Вызовите функцию CreateGpkgTables для добавления таблиц GeoPackage в базу данных.
SELECT CreateGpkgTables();