Включение пространственных функций в базе данных SQLite

Чтобы включить пространственные функции существующей базы данных SQLite, используйте один из следующих способов:

Добавление таблиц ST_Geometry в SQLite

Чтобы добавить системные таблицы ST_Geometry в существующую базу данных SQLite, требуется следующее:

  • Файл базы данных должен иметь расширение .sqlite; если у базы данных, которую вы будете использовать, другое расширение, переименуйте ее. Например, если база данных называется projdata.d1, переименуйте ее в projdata.sqlite, прежде чем добавить тип ST_Geometry.
  • База данных не может содержать другой пространственный тип.
  • Библиотека ST_Geometry Esri должна быть доступна в редакторе SQL, из которого вы ее загружаете. Вы можете приобрести эту библиотеку на My Esri (загрузите zip-файл поддержки базы данных).
  1. Если необходимо, переименуйте файл этой базы данных и присвойте ему расширение .sqlite.
  2. Подключитесь к базе данных с помощью редактора SQL, например, sqlite3.exe.
  3. Загрузите библиотеку 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');

  4. Вызовите функцию CreateOGCTables для добавления таблиц ST_Geometry в базу данных.

    SELECT CreateOGCTables();

Создание GeoPackage

Для преобразования существующей базы данных SQLite в GeoPackage необходимо следующее:

  • Файл базы данных должен иметь расширение .gpkg; если у базы данных, которую вы будете использовать, другое расширение, переименуйте ее. Например, базу данных с именем study.db переименуйте в study.gpkg перед тем, как преобразовать ее в GeoPackage.
  • База данных не может содержать другой пространственный тип.
  1. Если необходимо, переименуйте файл этой базы данных и присвойте ему расширение .gpkg.
  2. Подключитесь к базе данных с помощью редактора SQL, например, sqlite3.exe.
  3. Загрузите библиотеку 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');

  4. Вызовите функцию CreateGpkgTables для добавления таблиц GeoPackage в базу данных.

    SELECT CreateGpkgTables();