Qué es SQLite y por qué verlo en un mapa
SQLite es un motor de bases de datos pequeño y rápido que guarda toda una base de datos dentro de un único archivo plano en el disco, en lugar de funcionar como un programa servidor aparte. Es uno de los programas más usados del mundo, integrado en teléfonos, navegadores, aplicaciones y un sinfín de programas GIS. SpatiaLite es una extensión gratuita que añade funciones espaciales a ese mismo formato de archivo, permitiendo que un archivo SQLite normal también guarde puntos, líneas y polígonos, igual que una base de datos GIS completa. Este visor abre cualquiera de los dos tipos de archivo directamente en tu navegador y coloca los datos de ubicación que contiene sobre un mapa real, sin necesidad de instalar ningún programa de base de datos ni un GIS de escritorio completo.
Paso a paso









Sistemas de coordenadas y reproyección
La geometría de SpatiaLite puede guardarse en cualquier sistema de coordenadas, no solo en latitud y longitud normales. Esta herramienta lee el sistema de coordenadas registrado para cada tabla de geometría y, cuando lo reconoce (WGS84 y Web Mercator cubren la mayoría de los archivos reales, y otros sistemas se gestionan mediante la cadena proj4 guardada en spatial_ref_sys cuando es posible), reproyecta cada forma a latitud y longitud normales antes de dibujarla, de modo que el mapa sea correcto sin importar cómo el archivo de origen guardara sus coordenadas.
Mira: el visor de SQLite en menos de un minuto
¿Prefieres ver en vez de leer? Este breve recorrido muestra cómo subir un archivo SQLite o SpatiaLite, ver sus datos en el mapa y exportar el resultado.
Una breve historia de SQLite
SQLite fue escrito por D. Richard Hipp en el año 2000, mientras trabajaba en software para la Marina de los Estados Unidos. El proyecto necesitaba una base de datos que no requiriera instalar y ejecutar un servidor de base de datos aparte, así que Hipp construyó un motor de base de datos como una pequeña librería que lee y escribe directamente en un único archivo. Esa decisión de diseño, sin proceso servidor, sin instalación aparte, sin configuración, sigue siendo la razón por la que SQLite está en todas partes hoy en día.
Como es de dominio público y se puede integrar gratis en cualquier producto, SQLite se extendió rápidamente a navegadores web, sistemas operativos móviles, aplicaciones de escritorio y un sinfín de herramientas para desarrolladores. Todos los teléfonos Android e iOS incluyen SQLite de fábrica, y a menudo se le considera el motor de base de datos más usado del mundo, con miles de millones de dispositivos que lo tienen instalado.
SpatiaLite llegó más tarde, creado por Alessandro Furieri y publicado por primera vez alrededor de 2008. Funciona como una extensión cargable, distribuida como libspatialite, que añade funciones SQL espaciales, indexación espacial R-Tree y una forma estándar de guardar geometrías como BLOBs directamente en un archivo SQLite normal, de forma muy parecida a como PostGIS añade funciones espaciales a PostgreSQL. QGIS lleva muchos años admitiendo SpatiaLite como uno de sus formatos nativos, y sigue siendo una opción común, ligera y de archivo único para la recolección de datos en campo y para proyectos GIS de escritorio que no necesitan un servidor de base de datos completo.
Trabajar con varias tablas
Un único archivo SQLite o SpatiaLite suele contener más de una tabla digna de mapear, por ejemplo, una capa de puntos de encuesta junto con una capa de límites de un terreno. La lista de tablas de la barra lateral muestra todas las tablas encontradas en el archivo, etiquetadas como capa de geometría SpatiaLite, tabla con columnas de latitud/longitud detectadas, o tabla sin datos de ubicación. Haz clic en cualquier tabla etiquetada para cargarla en el mapa en lugar de la que se estuviera mostrando antes.
Si una tabla no tiene columnas de latitud/longitud con nombres evidentes, un pequeño panel te permite elegir a mano las dos columnas correctas, de la misma forma que la herramienta CSV to Map de este sitio, de modo que una tabla con nombres de columna poco habituales como "y_coord" o "pos_lng" nunca se quede fuera.
Exportar lo que ves
Haz clic en "Download Table as GeoJSON" para guardar la tabla cargada en ese momento, con la geometría decodificada y reproyectada, como un archivo GeoJSON estándar. Los cambios de estilo, como el color, solo afectan a la vista del mapa, no al archivo exportado. GeoJSON se abre sin problemas en QGIS, ArcGIS, Leaflet, Mapbox GL JS y prácticamente cualquier herramienta de mapas moderna.
Casos de uso reales
Un visor de SQLite y SpatiaLite resulta útil en cualquier lugar donde se recopilen, compartan o transfieran datos de mapas entre herramientas. Estos son los usos más frecuentes:
Dos formas de llevar tus datos al mapa
Abre una base de datos en la herramienta con el método que prefieras:
- Subir o arrastrar y soltar: Haz clic en "Upload" y elige un archivo .sqlite, .sqlite3 o .db, o arrastra el archivo directamente sobre el mapa desde el explorador de archivos.
- Probar con datos de ejemplo: Haz clic en "Sample Data" para crear y cargar una pequeña base de datos de demostración con una tabla de puntos de interés al estilo SpatiaLite y una tabla de sensores con latitud/longitud normal, para que puedas probar a hacer clic, cambiar el color y alternar entre tablas al instante.
En cuanto se carga un archivo, la herramienta enumera todas las tablas utilizables en la barra lateral y dibuja automáticamente la mejor coincidencia, una tabla de geometría SpatiaLite si existe, o si no, la primera tabla con columnas de latitud/longitud reconocibles, y ajusta el zoom del mapa para encajar sus datos. Haz clic en cualquier otra tabla de la lista para cambiar a ella.
Cambiar el color de tus datos
Tres controles en la barra lateral te permiten cambiar el estilo de toda la tabla al instante, sin tocar el archivo original:
- Color: elige cualquier color de las muestras o del selector de color. Se aplica de inmediato a líneas, rellenos y contornos de polígonos, y marcadores de puntos.
- Grosor de línea: haz los contornos y las líneas más finos o más gruesos, desde un trazo casi invisible hasta un trazo grueso, listo para un póster.
- Opacidad del relleno: controla lo sólido o transparente que es el relleno de los polígonos, desde un tono suave hasta un color totalmente sólido.
Cada cambio se aplica en vivo a la tabla que ya está en el mapa, así que puedes probar varios estilos en segundos antes de decidirte por uno.
Ver todos los atributos con un clic
Haz clic en cualquier punto, línea o polígono del mapa y se abrirá una ventana emergente con el valor de cada columna guardado en esa fila: nombres, categorías, números, fechas, todo lo que contenga la tabla excepto la geometría en bruto. El elemento en el que hiciste clic también recibe un contorno destacado en un color vivo, para que siempre sepas exactamente a qué forma pertenece la ventana emergente, incluso en una tabla densa o con elementos superpuestos.
Cómo está estructurado un archivo SQLite / SpatiaLite
Un archivo SQLite se organiza como un conjunto de tablas, con la misma estructura de filas y columnas que cualquier base de datos relacional. Abrir un archivo .sqlite o .db simplemente significa leer esas tablas. Un archivo con SpatiaLite habilitado añade un pequeño conjunto estándar de tablas adicionales sobre esa misma estructura, y eso es lo que permite que esta herramienta, y cualquier otro software compatible con SpatiaLite, encuentre los datos del mapa automáticamente en lugar de tener que adivinar.
Tablas normales
La mayoría de los archivos SQLite normales, incluida una exportación .sqlite o .db de una app de encuestas, una aplicación móvil o un script, guardan los datos como tablas normales con columnas tipadas. Si una tabla tiene columnas que parecen ser de latitud y longitud, ya sea por el nombre o por el rango de valores que contienen, esta herramienta las detecta automáticamente y dibuja cada fila como un punto.
Las tablas de metadatos de SpatiaLite
Un archivo con SpatiaLite habilitado añade tablas como geometry_columns, que enumera todas las tablas que contienen geometría junto con el nombre de su columna de geometría y su sistema de coordenadas, y spatial_ref_sys, que guarda la definición de cada sistema de coordenadas al que se hace referencia, incluida una cadena proj4 lista para usar. Juntas, estas tablas permiten que un visor encuentre todas las capas espaciales del archivo sin tener que revisar cada tabla a mano.
Almacenamiento de geometrías: BLOBs de SpatiaLite
Dentro de un archivo SpatiaLite, cada geometría, un punto, una línea o un polígono, se guarda como un valor binario (un BLOB) en una sola columna. El formato empieza con una cabecera corta que lleva el sistema de coordenadas y un cuadro delimitador para un filtrado rápido, seguida del tipo de geometría y sus coordenadas, y termina con un byte marcador fijo. Es una forma compacta de guardar las formas como bytes puros en lugar de texto. Esta herramienta lee ese formato binario directamente en tu navegador y lo convierte en las formas que ves en el mapa.
Preguntas frecuentes
Más herramientas que te pueden interesar
Map tiles © OpenStreetMap contributors and Protomaps (hosted by KONAKTIVE), CARTO, Esri (satellite). Database reading powered by sql.js. Map rendering by Leaflet. All file reading and rendering is local, no data is uploaded to any server.
