Universität Ulm - Sektion Angewandte Informationsverarbeitung
2.Übungsblatt (30.10.97 bis 06.11.97)
zur Vorlesung Unix Datenbanken I


Nach dem umgangssprachlichen Streß des letzten Übungsblattes (nichts ist deprimierender als die Wirklichkeit!) suchen Sie nun wieder Ihr Heil im Elfenbeinturm der exakten Wissenschaft!

Voraussetzung          (0 Punkte)

Gegeben sei eine ein-tabellarische kleine Unixdatenbank, respektive Datei, mit folgenden Feldern in exakt der angegebenen Reihenfolge:

Vorname:Name:Ort:Strasse:Telefon (der Feldtrenner sei der ‘:’)

Der Schlüssel setze sich aus allen Feldern der Tabelle (die Theorie ignorierend!) zusammen.

Aufgabe 1          (2 Punkte)

Schreiben Sie ein Shell-Programm unter Zuhilfename von Shell-Tools (nicht: awk, perl, tcl etc.), das einen Datensatz in die Datenbank unter Erkennung und Eliminierung von Duplikaten einfügt.

Aufruf: insert <Vorname> <Name> <Ort> <Strasse> <Telefon>

Schreiben Sie dann eine 2.Version des Programmes, das bezüglich der 1.Version auf unterschiedlichen Shell-Aufrufen/Tools beruht!

Aufgabe 2          (1 Punkt)

Schreiben Sie ein Shell-Programm, das einen Datensatz aus der Datei wieder löscht:

delete <Vorname> <Name> <Ort> <Strasse> <Telefon>

Aufgabe 3          (1 Punkt)

Schreiben Sie ein Shell-Programm, das die Telefonnummer zu einem Namen ausgibt:

gettel <Vorname> <Name>

Aufgabe 4          (1 Punkt)

Schreiben Sie ein Shell-Programm, das einen Namen zur zugehörigen Telefonnumer ausgibt:

getname <Telefon>

Aufgabe 5          (5 Punkte)

Erweitern Sie die Tabelle durch Einfügen des neuen Feldes Zeitstempel als 1.Spalte. Hier soll bei jedem insert der Zeitstempel der durchgeführten Transaktion in der Form yyyy.mm.dd.hh eingetragen sein. Ändern Sie die Programme aus Aufgabe 1 - 4 dahingehend, daß sie nach Änderung der Datendefinition noch korrekt funktionieren.

Hinweis:            (bei Nichtbeachten: -3 Punkte)

Der Name der Datendatei sowie der Feldtrenner dürfen nicht „hart" in den Programmen stehen, sondern müssen jeweils an zentraler Stelle eines Programms geändert werden können.