Para habilitar espacialmente una base de datos de SQLite existente, realice una de las siguientes acciones:
- Instale SpatiaLite. Consulte la Documentación de SpatiaLite para obtener información sobre cómo agregar SpatiaLite a una base de datos de SQLite.
- Utilice SQL para cargar la biblioteca ST_Geometry y crear el tipo ST_Geometry en una base de datos de SQLite existente.
- Utilice SQL para cargar la biblioteca ST_Geometry y crear un OGC GeoPackage.
Agregar tablas ST_Geometry a SQLite
Para agregar tablas de sistema de ST_Geometry a una base de datos de SQLite existente, se requiere lo siguiente:
- El archivo de la base de datos debe tener la extensión .sqlite; por tanto, si la base de datos que desea usar tiene una extensión diferente, debe cambiar su nombre. Por ejemplo, si la base de datos se llama projdata.d1, cambie el nombre a projdata.sqlite antes de agregarle el tipo ST_Geometry.
- La base de datos no puede contener ya otro tipo espacial.
- La biblioteca ST_Geometry de Esri debe ser accesible desde el editor de SQL desde el cual la cargó. Puede obtener la biblioteca desde My Esri (descargue el archivo comprimido de soporte de bases de datos de ArcGIS Pro) o copiarla desde el directorio DatabaseSupporten la ubicación de instalación de ArcGIS Desktop o ArcGIS Server.
- Si es necesario, cambie el nombre del archivo de la base de datos de modo que tenga la extensión .sqlite.
- Conéctese a la base de datos con un editor de SQL, como sqlite3.exe.
- Cargue la biblioteca ST_Geometry.
En este ejemplo se carga la biblioteca ST_Geometry en una base de datos de SQLite en un equipo con Microsoft Windows:
SELECT load_extension('stgeometry_sqlite.dll','SDE_SQL_funcs_init');
En este ejemplo se carga la biblioteca ST_Geometry en una base de datos de SQLite en un equipo con Linux:
SELECT load_extension('libstgeometry_sqlite.so','SDE_SQL_funcs_init');
- Invoque la función CreateOGCTables para agregar tablas ST_Geometry a la base de datos.
SELECT CreateOGCTables();
Crear un GeoPackage
Para convertir una base de datos SQLite existente en un GeoPackage, se requiere lo siguiente:
- El archivo de la base de datos debe tener la extensión .gpkg; por tanto, si la base de datos que desea usar tiene una extensión diferente, debe cambiar su nombre. Por ejemplo, si la base de datos se llama study.db, cambie el nombre a study.gpkg antes de convertirla en un GeoPackage.
- La base de datos no puede contener ya otro tipo espacial.
- Si es necesario, cambie el nombre del archivo de la base de datos de modo que tenga la extensión .gpkg.
- Conéctese a la base de datos con un editor de SQL, como sqlite3.exe.
- Cargue la biblioteca ST_Geometry.
En este ejemplo se carga la biblioteca ST_Geometry en una base de datos de SQLite en un equipo con Windows:
SELECT load_extension('stgeometry_sqlite.dll','SDE_SQL_funcs_init');
En este ejemplo se carga la biblioteca ST_Geometry en una base de datos de SQLite en un equipo con Linux:
SELECT load_extension('libstgeometry_sqlite.so','SDE_SQL_funcs_init');
- Invoque la función CreateGpkgTables para agregar tablas de GeoPackage a la base de datos.
SELECT CreateGpkgTables();