Skip to content

SQLite, noch einmal ...

Wie bereits angekündigt, wollte ich mal etwas zu SQLite schreiben.

Da ich das Werkzeug mal wieder im Büro gebraucht habe und fast zeitgleich eine Anfrage im ubuntuusers.de-Forum aufkam, hier also ein bisschen Text dazu:

SQLite ist eine Datenbank in einer Datei, das heisst, es muss kein Server-Dienst laufen. Das Client-Programm ist auch gleichzeitig das Datenbankverwaltungstool.

SQLite ist in allen aktuellen Mobiltelefonen (als Telefonbuch / Adressverwaltung) zu finden und wird aktiv von (beispielsweise) Adobe, Bloomberg, Mozilla und Symbian gefördert.

SQLite gibt es als Sourcecode und vorcompiliert für Linux, Mac OS X, und Windows, sowie auch als JDBC-Treiber oder Perl-Modul.

Natürlich kann SQLite nicht alles was ein Client-Server-Datenbanksystem kann, aber für 95% der Anwendungsfälle einer Privatperson reicht es aus.

Ein sehr grosser Anteil von SQL-Kommandos wird unterstützt.

Es gibt nur vier Speicherklassen Integer, Real, Text, Blob. "create table"-Statement anderer Datenbanksysteme wird in der Regel problemlos interpretiert (nur, dass im Hintergrund beispielsweise statt VARCHAR TEXT benutzt wird).

Die Aufgabe:
Zwei Dateien: Eine enthält Adressdaten in Folgender Form (telneu.txt, 1.8 GB, ~60 Millionen Zeilen): Vorname Nachname;Strasse;Ort;PLZ;Telnr; (Je Zeile ein Datensatz), die Zweite Datei enthält nur Postleitzahlen (plz.txt, ~1000 Zeilen).

Aus der ersten Datei werden alle Datensätze gesucht, deren Postleitzahlen in der zweiten Datei vorkommen.
sqlite> CREATE TABLE telneu (Vorname_Nachname text, Strasse text, Ort text, PLZ text, Telnr text);
sqlite> .separator ";"
sqlite> .import telneu.txt telneu
sqlite> CREATE INDEX idx_telneu_plz ON telneu (PLZ);
sqlite> CREATE TABLE plz (plz text);
sqlite> .import plz.txt plz
sqlite> SELECT * FROM telneu WHERE plz IN (SELECT plz FROM plz);


Vielleicht hilft es Euch auch.

Hier ein paar Links:
- Downloads - Paket "sqlite3" in Ubuntu
- Dokumentation
- Datentypen
- SQL-Syntax
- JDBC-Treiber
- Perl-Modul - Paket "libdbd-sqlite" in Ubuntu
- Firefox Extension SQLite Manager

Trackbacks

Keine Trackbacks

Kommentare

Ansicht der Kommentare: Linear | Verschachtelt

Noch keine Kommentare

Kommentar schreiben

Gravatar, Favatar, Pavatar, Identica, Twitter, MyBlogLog Autoren-Bilder werden unterstützt.
BBCode-Formatierung erlaubt
Umschließende Sterne heben ein Wort hervor (*wort*), per _wort_ kann ein Wort unterstrichen werden.
Standard-Text Smilies wie :-) und ;-) werden zu Bildern konvertiert.
Die angegebene E-Mail-Adresse wird nicht dargestellt, sondern nur für eventuelle Benachrichtigungen verwendet.
:'(  :-)  :-|  :-O  :-(  8-)  :-D  :-P  ;-) 
Formular-Optionen