Ubuntu 16.04 Xenial Xerus
Ubuntu 14.04 Trusty Tahr
Ubuntu 12.04 Precise Pangolin
SQLite ist eine kleine und sehr leichtgewichtige Implementierung einer SQL-Datenbank. SQLite ist komplett in C geschrieben, es sind aber auch Schnittstellen zu so gut wie allen anderen gängigen (und weniger bekannten) Programmiersprachen verfügbar.
SQLite ist freie Software und wird von großen Open-Source Projekten wie Amarok, Pidgin und Firefox (ab Version 3), aber auch von kleineren Programmen wie MyNotex oder Yarock genutzt. Darüber hinaus gibt es eine Reihe von Closed-Source-Projekten, die SQLite einsetzen (wie z.B. Apples iPhone).
Zu beachten ist, dass SQLite keine vollständige Implementierung des SQL-Standards enthält, aber für die meisten Anwendungsfälle reicht der vorhandene Funktionsumfang völlig aus.
Geht es darum, große bis sehr große Datenmengen zu verwalten (z.B. Datenbank mit vielen Tabellen und mehreren Tausend oder Hunderttausend Einträgen), so ist SQLite dazu zwar grundsätzlich in der Lage, allerdings dann nicht mehr sonderlich performant. Besonders dann nicht, wenn quasi-parallele Schreibvorgänge benötigt werden. Für diese Anwendungsfälle eignen sich dann die "großen" Datenbanken wie PostgreSQL, MariaDB oder MySQL besser.
Die aktuelle Version von SQLite kann über die Paketverwaltung installiert [1] werden:
sqlite3
mit apturl
Paketliste zum Kopieren:
sudo apt-get install sqlite3
sudo aptitude install sqlite3
Optional kann man noch die Dokumentation (in englischer Sprache) installieren, und zwar über folgendes Paket:
sqlite3-doc
mit apturl
Paketliste zum Kopieren:
sudo apt-get install sqlite3-doc
sudo aptitude install sqlite3-doc
SQLite bringt von Haus aus "nur" ein Kommandozeilenschnittstelle [2] mit. Um SQLite zu nutzen, gilt folgende allgemeine Syntax:
sqlite3 [OPTIONEN] DATENBANK [SQL-BEFEHL]
Die Angabe von Optionen und von SQL-Befehlen ist dabei optional. Existiert die Datenbank DATENBANK
nicht, so wird diese automatisch angelegt und geöffnet. Gibt man keinen SQL-Befehl an, so befindet man sich automatisch im interaktiven Modus von SQLite [3]. Eine Übersicht über allgemeine Befehle erhält man mit .help
, den interaktiven Modus verlässt man mit .exit
. Natürlich kann man im interaktiven Modus auch die unterstützen SQL-Befehle eingeben und ausführen. Zu beachten ist dabei, dass Transaktionen explizit eingeleitet und ausgeführt werden müssen.
Eine Übersicht über die mögliche Startoptionen findet man in den Manpages zu SQLite. Man kann die Optionen auch in der Datei ~/.sqliterc hinterlegen, die SQLite beim Start auswertet. Die Datei wird bei der Installation von SQLite nicht automatisch angelegt, muss also gegebenenfalls von Hand angelegt werden [3]. Mehr Informationen hierzu findet man in ebenfalls in den Manpages.
Auslesen einer .sqlite-Datei auf einem Ubuntu Phone, welche unter anderem SMS enthält:
sqlite3 /home/phablet/.local/share/history-service/history.sqlite SQLite version 3.8.7.4 2014-12-09 01:34:36 Enter ".help" for usage hints. sqlite> .tables schema_version text_events threads text_event_attachments thread_participants voice_events sqlite> select * from text_events; ofono/ofono/account0|Netzanbieter|2015-09-21T17:46:12+0200-1|Irgendwer|2015-09-21T15:46:23.000|0|Hier steht eine SMS drin!|0|0|2015-09-21T16:19:13.520| [...] sqlite> .quit
Zunächst ruft man die entsprechende Datenbank auf. Mit .tables
kann man darin enthaltene Tabellen auflisten. Um beispielsweise die Tabelle text_events
anzuzeigen, ruft man sie wie im Beispiel mit select
auf.
Zurückblättern in Befehlen: Bereits benutzte Befehle lassen sich mit ↑ wieder anzeigen und mit ⏎ erneut ausführen.
Wie oben bereits erwähnt, unterstützt SQLite nicht alle Elemente von SQL, eine Übersicht über die in SQLite enthaltenen Funktionen findet man in der Dokumentation . Weitere Informationen findet man auch im Wiki von SQLite (siehe Links).
Hat man die Dokumentation zu SQLite installiert, so hat man eine recht ausführliche, englischsprachige Dokumentation bereits auf der Festplatte. Die Dokumentation ist im HTML-Format angelegt, den Einstieg bietet die Seite (Datei) /usr/share/doc/sqlite3-doc/index.html. Unter Links findet man einige weitere Verweise auf weitere SQLite-Dokumentationen.
In den offiziellen Paketquellen findet sich der SQLite Database Browser, der eine grafische Oberfläche zum Anlegen und Editieren von SQLite-Datenbanken bietet. Darüber hinaus können CSV-Dateien im- oder exportiert werden.
Ebenfalls in den Paketquellen befindet sich sqliteman.
Eine plattformübergreifende GUI, die ohne Installation verwendet werden kann, ist SQLiteStudio .
Des Weiteren gibt es eine GUI namens SQLite Manager , die als Addon in so gut wie alle mozilla-basierten Anwendungen eingebunden werden kann.
Daneben existieren noch die webbasierten Oberflächen phpsqliteadmin , das (wie der Name vermuten lässt) an phpMyAdmin für MySQL angelehnt ist und phpLiteAdmin (siehe auch den Blogbeitrag phpLiteAdmin unter Raspberry Pi/Linux nutzen , 02/2015).
Diese Revision wurde am 7. März 2017 18:23 von UlfZibis erstellt.