Home / LinuxUser / 2001 / 12 / Die Daten fest im Griff

Newsletter abonnieren

Lies uns auf...

Folge LinuxCommunity auf Twitter

Top-Beiträge

Mandriva gibt Distribution in die Hände der Community
(268 Punkte bei 24 Stimmen)
Neues vom Systemd
(161 Punkte bei 4 Stimmen)
Mandriva in Nöten
(161 Punkte bei 4 Stimmen)

Heftarchiv

LinuxUser Heftarchiv

EasyLinux Heftarchiv

Ubuntu User Heftarchiv

Ubuntu User Heftarchiv

Partner-Links:

Shopping
Topsuche
 
Yatego Deutschlands größte Shoppingmall. 10000 Shops,
3.5 Mio Artikel. Alle Bestseller, Servertechnik und Technik Themenwelten.

Notebooks und Netzwerkhardware bei Mercateo günstig kaufen.
Internet Telefonie mit VoIP Telefonen von Gigaset
Das B2B Portal www.Linx.de informiert über Produkte und Dienstleistungen.
Günstige Digitalkameras finden Sie im Preisvergleich.

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: Neue Tabellen und Felder anlegen

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.

Abbildung 3: Die Relation "WohnenIn"

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".

Abbildung 4: Alle Tabellen im Überblick

Einem Freund empfehlen    Druckansicht Bookmark and Share
Kommentare

Hits
Wertung: 0 Punkte (0 Stimmen)

Schlecht Gut

Infos zur Publikation

Infos zur Publikation

LinuxUser 06/2012

Aktuelle Ausgabe kaufen:

Heft bestellen Heft als PDF kaufen

LinuxUser erscheint monatlich und kostet in der Nomedia-Ausgabe EUR 5,50 und mit DVD EUR 8,50. Weitere Informationen zum Heft finden Sie auf der LinuxUser-Homepage.

Im LinuxUser-Probeabo erhalten Sie drei Ausgaben für 3 Euro. Das Jahresabo (ab EUR 56,10) können Sie im LNM-Shop bestellen.

Tipp der Woche

Adobe AIR
Adobe-AIR-Programme installieren und (manuell) starten
Tim Schürmann, 14.05.2012 13:09, 0 Kommentare

Es gibt sie noch: neue Anwendungen, die Adobes Integrated Runtime voraussetzen. Aktuellstes und vermutlich auch größtes Beispiel ist das Adventure Botanicula

Aktuelle Fragen

gibt es ein Kommandozeilen Tool, um ein X11-Fenster in ein Anderes einzubetten?
GoaSkin , 21.05.2012 16:44, 0 Antworten
Das XEmbed-Protokoll ist u.A. dazu gedacht, dass man eine X11-Anwendung in eine andere wie ein Wi...
Apache2, Options -Indexes geht nicht
no no, 12.05.2012 19:01, 8 Antworten
Habe in apache2.conf folgendes stehen: Options -Indexes ...
LInux auf Dell LS H500
Andreas Endresl, 09.05.2012 08:54, 2 Antworten
Habe einen alten Dell Latitude LS H500 nur mit ext. Floppy und CD es geht nur immer eines von den...
Datenwiederherstellung unter Ubuntu 12.04 mit "Simple Backup" nach Umzug von Linux Mint
Christian Lottmann, 07.05.2012 13:33, 0 Antworten
Vor dem Umzug auf Ubuntu 12.04 habe ich unter Linux MInt mit "Simple Backup" voll (15.4.2012) und...
DKMS für den propritären NVIDIA-Treiber
Commander Data, 26.04.2012 22:02, 2 Antworten
Hallo an die Gemeinde. Ich habe hier ein interessantes Stück openSuSE gefunden. http://forums.op...