Open-Source Datenbanksysteme
Die Daten fest im Griff
Der anwenderfreundliche Ansatz
PostgreSQL-Anwender dürfen sich allerdings freuen: Als Ergänzung zum Server gibt es ein kleines Utility, das zu den besseren Datenbank-Frontends zählt. Haben Sie alle Pakete richtig installiert, sollte sich die Tcl/Tk-Anwendung pgaccess auf Ihrer Festplatte befinden.
Starten Sie nun unter Ihrer normalen Kennung pgaccess und öffnen Sie die frisch angelegte, noch leere Datenbank Adressen über das Menü Database/Open (User: postgres). Mit dem Knopf New aus der oberen Funktionsleiste werden neue Datentabellen angelegt.
Abbildung 2 zeigt eine neu angelegte Tabelle nach dem vordefinierten Schema. Die Felder mit dem vorangestellten '*' sind Primärschlüssel (im Datenbankschema durch Unterstreichen kenntlich gemacht). Zusammen identifizieren sie einen Datensatz eindeutig, ähnlich einer Serien- oder Ausweisnummer. Als Datentyp dienen hier VARCHAR, eine Zeichenkette, und INT4, eine ganzzahlige Nummer. Die Option NOT NULL sorgt dafür, dass dieses Feld bei der Eingabe neuer Daten nicht versehentlich ausgelassen wird.
Verfahren Sie nun analog mit der Tabelle Orte und halten Sie sich streng an das vorgegebene Schema aus Abbildung 1. Lediglich die Verbindung zwischen den beiden Tabellen erfordert einen etwas anderen Ansatz. Sie müssen eine dritte Tabelle anlegen, etwa WohnenIn, die die Personen den Wohnorten zuordnet. Doch keine Angst, solche Verbindungen werden stets nach dem gleichen Prinzip erstellt: Man nehme die Primärschlüssel der beiden Tabellen und erzeuge daraus eine einzige neue Tabelle.
Sie haben nun eine einsatzbereite Datenbank auf Ihrem PostgreSQL-Server erstellt und können darauf arbeiten, neue Daten einfügen, suchen und alte Informationen löschen. Ein Doppelklick auf eine Tabelle öffnet sie und erlaubt die Bearbeitung. Das Schöne daran ist, dass Sie bis jetzt noch kein SQL benötigt haben und für diese Grundfunktionen auch in Zukunft darauf verzichten können. Trotzdem wollen wir Sie an dieser Stelle auch mit der SQL-Vorgehensweise vertraut machen, da diese universell und bei jeder SQL-Datenbank sehr ähnlich ist.
Kommandozeile
Direkter, allerdings weniger einsteigerfreundlich, lässt sich eine Datenbank mit SQL-Befehlen erstellen. Zu diesem Zweck gibt es in PostgreSQL einen Interpreter mit dem Namen psql. Als User postgres können Sie sich mit diesem Kommando beim Datenbank-Server anmelden:
psql Adressen
Das Resultat sieht unspektakulär aus. Doch täuschen Sie sich nicht, denn Sie sind jetzt direkt mit der Datenbank verbunden und können manuell Tabellen erstellen und bearbeiten. Um Ihnen etwas Zeit zu sparen, haben wir drei kurze, selbsterklärende Skripte vorbereitet, die Sie auch auf der beiliegenden CD finden (create_tables.sql, fill_tables.sql, delete_tables.sql). Die Skripte können über die folgenden Kommandos geladen und ausgeführt werden:
\i create_tables.sql \i fill_tables.sql
An dieser Stelle wollen wir nicht weiter auf den Inhalt der Skripte eingehen. Es handelt sich um einfache ASCII-Text-Dateien, die Sie mit jedem Editor betrachten können. Die enthaltenen SQL-Befehle ließen sich natürlich genauso gut von Hand eingeben, doch das kostet Zeit und Nerven, besonders wenn Sie mit der Datenbank experimentieren wollen. Sollte dabei etwas schief gehen und Sie wollen den Originalzustand wieder herstellen, dann ist das überhaupt kein Problem: Einfach das Skript delete_tables.sql ausführen und von vorne beginnen.
\i delete_tables.sql
Wie Sie sehen, ist dieser manuelle Ansatz sehr elegant und vor allem portabel. Egal, ob Sie später mit MySQL, mSQL oder Oracle arbeiten müssen, die Befehle aus den drei Skripten werden mit Sicherheit von allen Systemen richtig interpretiert. Das grafische Frontend pgaccess führt schließlich auch nur SQL-Befehle aus, die sich aus Ihren Aktionen in der Oberfläche ergeben.
Nehmen Sie sich an dieser Stelle ruhig etwas Zeit, um mit dem Interpreter zu experimentieren. Fügen Sie Daten mit dem INSERT Kommando ein, oder verwenden sie SELECT, um nach Datensätzen zu suchen. Die Links [4] und [5] sind neben den drei Skripten sicherlich gute Anlaufpunkte für die ersten Gehversuche mit dieser Beschreibungssprache. Verlassen wird psql übrigens mit "\q".



