Was ist SQLite, und warum auf einer Karte ansehen?
SQLite ist eine kleine, schnelle Datenbank-Engine, die eine gesamte Datenbank in einer einzigen einfachen Datei auf der Festplatte speichert, anstatt als separates Serverprogramm zu laufen. Es ist eine der am weitesten verbreiteten Software-Komponenten der Welt und steckt in Telefonen, Browsern, Apps und unzähligen GIS-Programmen. SpatiaLite ist eine kostenlose Erweiterung, die diesem Dateiformat räumliche Funktionen hinzufügt, sodass eine gewöhnliche SQLite-Datei auch Punkte, Linien und Polygone speichern kann, so wie es eine vollständige GIS-Datenbank tut. Dieser Viewer öffnet beide Arten von Dateien direkt in Ihrem Browser und stellt die darin enthaltenen Standortdaten auf einer echten Karte dar, ganz ohne Datenbankprogramm oder eine vollständige Desktop-GIS-Installation.
Arbeiten mit mehreren Tabellen
Eine einzelne SQLite- oder SpatiaLite-Datei enthält oft mehr als eine Tabelle, die sich zum Kartieren eignet, zum Beispiel eine Ebene mit Vermessungspunkten neben einer Ebene mit Standortgrenzen. Die Tabellenliste in der Seitenleiste zeigt jede in der Datei gefundene Tabelle, gekennzeichnet als SpatiaLite-Geometrieebene, als Tabelle mit erkannten Breiten-/Längengrad-Spalten oder als Tabelle ohne Standortdaten. Klicken Sie auf eine markierte Tabelle, um sie anstelle der zuvor angezeigten Tabelle auf die Karte zu laden.
Wenn eine Tabelle keine offensichtlich benannten Breiten-/Längengrad-Spalten hat, können Sie mit einem kleinen Panel die richtigen zwei Spalten von Hand auswählen, genau wie beim CSV to Map Tool dieser Seite, sodass auch eine Tabelle mit ungewöhnlichen Spaltennamen wie "y_coord" oder "pos_lng" nie außen vor bleibt.
Eine kurze Geschichte von SQLite
SQLite wurde im Jahr 2000 von D. Richard Hipp geschrieben, während er an Software für die US-Marine arbeitete. Das Projekt brauchte eine Datenbank, die keinen separaten Datenbankserver zur Installation und zum Betrieb benötigte. Deshalb baute Hipp eine Datenbank-Engine als kleine Bibliothek, die direkt in einer einzigen Datei liest und schreibt. Genau diese Design-Entscheidung, kein Serverprozess, keine separate Installation, keine Konfiguration, ist bis heute der Grund, warum SQLite überall zu finden ist.
Da SQLite gemeinfrei ist und kostenlos in jedes Produkt eingebaut werden darf, verbreitete es sich schnell in Webbrowsern, mobilen Betriebssystemen, Desktop-Apps und unzähligen Entwickler-Tools. Jedes Android- und iOS-Telefon liefert SQLite bereits eingebaut mit, und es wird oft als die am weitesten verbreitete Datenbank-Engine der Welt bezeichnet, mit einer Installationsbasis von mehreren Milliarden Geräten.
SpatiaLite kam später hinzu, geschaffen von Alessandro Furieri und erstmals um 2008 veröffentlicht. Es funktioniert als ladbare Erweiterung, verteilt als libspatialite, die räumliche SQL-Funktionen, räumliche R-Tree-Indizierung und eine standardisierte Methode hinzufügt, um Geometrien als BLOBs direkt in einer gewöhnlichen SQLite-Datei zu speichern, ganz ähnlich wie PostGIS PostgreSQL um räumliche Funktionen erweitert. QGIS unterstützt SpatiaLite seit vielen Jahren als eines seiner nativen Formate, und es bleibt eine gängige, leichtgewichtige Wahl mit nur einer Datei für die Felddatenerfassung und für Desktop-GIS-Projekte, die keinen vollständigen Datenbankserver benötigen.
Die Farbe Ihrer Daten ändern
Drei Regler in der Seitenleiste lassen Sie die gesamte Tabelle sofort neu gestalten, ohne die Originaldatei zu verändern:
- Farbe: wählen Sie eine beliebige Farbe aus den Farbfeldern oder dem Farbwähler. Sie wird sofort auf Linien, Polygonfüllungen und -umrisse sowie Punktmarkierungen angewendet.
- Linienstärke: machen Sie Umrisse und Linien dünner oder dicker, von einer Haarlinie bis zu einem kräftigen, plakattauglichen Strich.
- Füllungsdeckkraft: steuern Sie, wie deckend oder durchsichtig Polygonfüllungen sind, von einem leichten Farbhauch bis zu einer voll deckenden Farbe.
Jede Änderung wirkt sich sofort auf die bereits auf der Karte angezeigte Tabelle aus, sodass Sie in Sekunden mehrere Varianten ausprobieren können, bevor Sie sich entscheiden.
Jedes Attribut per Klick ansehen
Klicken Sie auf einen beliebigen Punkt, eine Linie oder ein Polygon auf der Karte, und ein Popup öffnet sich mit jedem in dieser Zeile gespeicherten Spaltenwert, Namen, Kategorien, Zahlen, Daten, alles, was die Tabelle enthält, außer der reinen Geometrie selbst. Das angeklickte Objekt erhält außerdem einen leuchtenden Rahmen, sodass Sie immer genau wissen, zu welcher Form das Popup gehört, selbst bei einer dichten oder überlappenden Tabelle.
Exportieren, was Sie sehen
Klicken Sie auf "Download Table as GeoJSON", um die aktuell geladene Tabelle, mit dekodierter und umprojizierter Geometrie, als Standard-GeoJSON-Datei zu speichern. Stiländerungen wie die Farbe wirken sich nur auf die Kartenansicht aus, nicht auf die exportierte Datei. GeoJSON lässt sich problemlos in QGIS, ArcGIS, Leaflet, Mapbox GL JS und praktisch jedem modernen Kartentool öffnen.
Wie eine SQLite-/SpatiaLite-Datei aufgebaut ist
Eine SQLite-Datei ist als eine Sammlung von Tabellen organisiert, im selben Zeilen-und-Spalten-Layout wie jede relationale Datenbank. Eine .sqlite- oder .db-Datei zu öffnen bedeutet einfach, diese Tabellen zu lesen. Eine SpatiaLite-fähige Datei fügt dieser Struktur einen kleinen, standardisierten Satz zusätzlicher Tabellen hinzu. Genau das erlaubt es diesem Tool, wie auch jeder anderen SpatiaLite-fähigen Software, die Kartendaten automatisch zu finden, statt raten zu müssen.
Gewöhnliche Tabellen
Die meisten einfachen SQLite-Dateien, einschließlich eines .sqlite- oder .db-Exports aus einer Vermessungs-App, einer mobilen App oder einem Skript, speichern Daten als gewöhnliche Tabellen mit typisierten Spalten. Wenn eine Tabelle Spalten enthält, die wie Breiten- und Längengrad aussehen, sei es am Namen oder am Wertebereich erkennbar, erkennt dieses Tool sie automatisch und stellt jede Zeile als Punkt dar.
Die Metadaten-Tabellen von SpatiaLite
Eine SpatiaLite-fähige Datei fügt Tabellen wie geometry_columns hinzu, die jede Tabelle mit Geometrie zusammen mit dem Namen ihrer Geometriespalte und ihrem Koordinatensystem auflistet, sowie spatial_ref_sys, die die Definition jedes verwendeten Koordinatensystems speichert, einschließlich einer einsatzbereiten proj4-Zeichenkette. Zusammen erlauben diese Tabellen einem Viewer, jede räumliche Ebene in der Datei zu finden, ohne jede Tabelle von Hand durchsuchen zu müssen.
Geometriespeicherung: SpatiaLite-BLOBs
In einer SpatiaLite-Datei wird jede Geometrie, ein Punkt, eine Linie oder ein Polygon, als binärer Wert (ein BLOB) in einer einzigen Spalte gespeichert. Das Format beginnt mit einem kurzen Header, der das Koordinatensystem und eine Bounding Box für schnelles Filtern enthält, gefolgt vom Geometrietyp und seinen Koordinaten, und endet mit einem festen Marker-Byte. Das ist eine kompakte Art, Formen als rohe Bytes statt als Text zu speichern. Dieses Tool liest dieses Binärformat direkt in Ihrem Browser und wandelt es in die Formen um, die Sie auf der Karte sehen.
Schritt für Schritt









Video: SQLite-Viewer in unter einer Minute
Schauen Sie sich lieber ein Video an, statt zu lesen? Diese kurze Anleitung zeigt, wie Sie eine SQLite- oder SpatiaLite-Datei hochladen, ihre Daten auf der Karte ansehen und das Ergebnis exportieren.
Anwendungsfälle aus der Praxis
Ein SQLite- und SpatiaLite-Viewer ist überall dort nützlich, wo Kartendaten gesammelt, geteilt oder zwischen Tools weitergegeben werden. Hier wird er am häufigsten eingesetzt:
Koordinatensysteme und Umprojektion
SpatiaLite-Geometrie kann in jedem beliebigen Koordinatensystem gespeichert sein, nicht nur in einfachem Breiten- und Längengrad. Dieses Tool liest das für jede Geometrietabelle hinterlegte Koordinatensystem aus und projiziert, wenn es dieses erkennt (WGS84 und Web Mercator decken die meisten realen Dateien ab, andere Systeme werden nach Möglichkeit über die in spatial_ref_sys gespeicherte proj4-Zeichenkette verarbeitet), jede Form vor dem Zeichnen in gewöhnlichen Breiten- und Längengrad um, sodass die Karte unabhängig davon korrekt ist, wie die Quelldatei ihre Koordinaten gespeichert hat.
Häufige Fragen
Zwei Wege, Ihre Daten auf die Karte zu bringen
Öffnen Sie eine Datenbank im Tool, mit welcher Methode Ihnen am besten passt:
- Hochladen oder per Drag-and-drop: Klicken Sie auf "Upload" und wählen Sie eine .sqlite-, .sqlite3- oder .db-Datei, oder ziehen Sie die Datei direkt aus Ihrem Dateibrowser auf die Karte.
- Beispieldaten ausprobieren: Klicken Sie auf "Sample Data", um eine kleine Demo-Datenbank zu erstellen und zu laden, mit einer Landmarken-Tabelle im SpatiaLite-Stil und einer einfachen Sensoren-Tabelle mit Breiten-/Längengrad, sodass Sie das Klicken, Einfärben und Wechseln zwischen Tabellen sofort ausprobieren können.
Sobald eine Datei geladen ist, listet das Tool jede nutzbare Tabelle in der Seitenleiste auf und stellt automatisch die beste Übereinstimmung dar, eine SpatiaLite-Geometrietabelle, falls vorhanden, andernfalls die erste Tabelle mit erkennbaren Breiten-/Längengrad-Spalten, und zoomt die Karte so, dass alle Daten sichtbar sind. Klicken Sie auf eine andere Tabelle in der Liste, um stattdessen zu dieser zu wechseln.
Weitere Tools, die Ihnen gefallen könnten
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.
