Praxis SQL ] [ Praxis StarOffice ]

Praxis OpenOffice

Das Folgende bezieht sich auf OpenOffice 1.1 RC1 (oO).

Leider ist es zurzeit nicht möglich, Datenbanken mit oO zu entwerfen bzw. zu erstellen. Das Paket von StarOffice Version 6 enthält dagegen weiterhin das DBMS Adabas. Abgesehen davon können bestehende Datenbanken abgefragt oder geändert werden. Zum Einbinden der Terra-Datenbank muss man allerdings andere Schritte befolgen.

Wenn Sie StarOffice verwenden überspringen Sie diesen Absatz. Verwenden Sie oO, lesen Sie hier weiter und überspringen bis zu .

Datenbank importieren

Öffnen Sie zunächst die Ansicht – Datenquellen. Füllen Sie die Felder wie in den Abbildungen zu sehen ist. Gehen Sie über das Kontextmenü Datenquellen verwalten weiter mit den Schaltflächen Neue Datenquelle - Datequellen-URL ... (Abbildung 1) - Verwalten (Abbildung 2) zum ODBC-Datenquellen-Administrator. Legen Sie dort eine Verknüpfung auf die Terra-Datenbank mit dem passenden Treiber über die Schaltfläche Hinzufügen an. Geben Sie den Pfad zur Datei terrra.mdb an und verwenden Sie den MS-Access-Treiber (Abbildung 3).


Die Karteikarte ODBC betrifft uns nicht. Wenn alles geklappt hat, sehen Sie wie in Abbildung 4 die Tabellen der Datenbank. Verlassen Sie das Fenster. Nun können Sie mit der Terra-Datenbank arbeiten.

Besonderheiten

Natürlich ändert sich mit jeder neuen Version auch das Aussehen und das Verhalten des Programms. Einiges ist mir aufgefallen, dass ich hier nun noch kurz anhand eines Beispiels vorstellen möchte. Überspringen Sie diesen Absatz, wenn Sie nicht wissen was eine Gruppierung ist. Das Beispiel: Gesucht sei das Verhältnis von den Einwohnern aller Städte zu den (gesamt) Einwohnern eines Landes. Wir müssen also die Tabellen Stadt und Land verbinden eine Gruppierung vornehmen um die Summe der Stadteinwohner je Land zu ermitteln. Das zeigen die Bilder 5-7. Weniger wichtig ist, dass manche Länder mehr Stadteinwohner als Einwohner des gesamten Landes haben. Aber die Sortierung wird in der Design-Ansicht der Abfrage zwar eingestellt aber nicht wirksam. Sie muss erst in der SQL-Ansicht nachträglich von Hand eingefügt werden. Woran man sieht, dass die SQL-Befehle auch weiterhin große Bedeutung haben.


Abbildung 5


Abbildung 6


Abbildung 7

Praxis StarOffice

SO HilfeDer unten beschriebene Sachverhalt bezieht sich auf Star Office 5.2 (SO). Beachten Sie, dass Sie die Online-Hilfe verwenden können. Dazu wählen sie im Hilfe-Menü den Punkt Inhalt. Suchen Sie dann nach dem Eintrag StarOffice Base. Das unten beschriebene Vorgehen finden Sie in der Hilfe ausführlicher beschrieben.
Um einzelne Phrasen zu finden verwenden Sie das Fernglas-Symbol.
Datenbanken bestehen in SO aus Tabellen, Abfragen, Berichten und Formularen. Um das Problem der Abfragen zu demonstrieren, verwenden wir die Terra-Datenbank. Deren Aufbau wird in Kapitel beschrieben.

Datenbank importieren

Die Terra-Datenbank befindet sich in Ihrem Multididac-Verzeichnis. So können Sie vorgehen:

  1. Wählen Sie Datei – Neu - Datenbank.
  2. Geben Sie der Datenbank den Namen Terra.
  3. Wählen Sie die Karteikarte Typ. Suchen Sie MS Access 97 und suchen Sie die Datenquelle in c:\multididac\informatik_12x\nName_vName\terra.mdb und bestätigen Sie mit OK.

Sie erreichen die Datenbank ab sofort über den Explorer. Das Kapitel können Sie überspringen, wenn Sie keine neue Datenbank anlegen müssen.
Datenbank neu erstellen

  1. Der Befehl Datei - Neu - Datenbank... öffnet den Eigenschaften-Dialog, in dem Sie einige Einstellungen vornehmen müssen.
  2. Vergeben Sie im Register Allgemein als Namen für Ihre Datenbank z. B. "Adressen".
  3. Im Register Typ können Sie dBase wählen. Dieses Dateiformat ist weit verbreitet und deshalb gut geeignet, die Datenbank auch mit andern Datenbankbetriebssystemen zu bearbeiten.

Datenbankdesign

Unter dem „Design einer Datenbank“ versteht man das Aufteilen der Daten in getrennte Relationen. Im Prinzip besteht es aus zwei Hauptschritten. Dem logischen Datenbankdesign, dem Aufteilen der Attribute in unterschiedliche Relationen und dem physischen Datenbankdesign bei dem der logische Entwurf in ein konkretes Datenbank-Managementsystem umgesetzt wird. Beide Schritte sind durchaus nicht trivial und wir werden hier nicht weiter darüber sprechen. Sollten Sie weitere Hinweise dazu benötigen, sehen Sie sich die Video-Datenbank in der Online-Hilfe zu SO an oder suchen Sie z. B. im Internet nach den Begriffen Entity-Relationship-Modell und Normalisierung im Coddschen-Relationenmodell. In Zukunft setzen wir voraus, dass die Struktur der Tabellen klar ist.

Tabellenentwurf

Tabelle 4

Feldname

Datentyp

Länge

Vorname

Text

25

Nachname

Text

25

Straße

Text

25

Ort

Text

20

PLZ

Zahl oder Text

5

Telefon

Zahl oder Text

11

Fax

Zahl oder Text

11

  1. Sie müssen im Explorer die Zeile Tabellen unter einer Datenbank sehen.
  2. Wählen Sie im Kontextmenü Neu – Tabelle - Tabellenentwurf, um eine neue Tabelle anzulegen.
  3. Im Tabellenentwurf können Sie nun alle notwendigen Attribute (Spalten/Felder der Tabelle) definieren.
  4. In jeder Spalte stehen Daten eines Typs. Legen Sie deshalb für jedes Attribut den Datentyp fest. Je nach Datenbankformat gibt es unterschiedliche Möglichkeiten. Folgende Überlegungen könnten für die Adressdatenbank zutreffen:
  5. Um den gewünschten Datentyp festzulegen können Sie das Drop-Down-Menü nutzen.
  6. Sollten noch weitere Daten benötigt werden, so müssen diese hinzugefügt werden.
  7. Nachdem die Definition abgeschlossen ist und der Entwurf geschlossen wird, ist es noch erforderlich der Tabelle einen Namen zu geben.

Operationen auf Datensätzen

Vergleichen Sie dazu auch mit dem Kapitel "Theorie". Dort finden sie das vorausgesetzte Wissen über den Aufbau und die wichtigsten Begriffe zum Thema Datenbanken. Operationen auf Datensätzen werden auch in Kapitel "relationale Operationen" beschrieben.

Abbildung 9

Hinzufügen, Ändern, Löschen

Die angelegte Tabelle kann, wie Sie das aus den „normalen“ StarOffice-Tabellen kennen bearbeitet werden. Um einen Datensatz zu löschen, muss die Zeile selektiert werden. Danach rufen Sie im Kontextmenü Löschen auf. Die Reihenfolge der Zeilen und Spalten kann beliebig geändert werden, aber ein neuer Datensatz kann stets nur in der untersten Zeile eingefügt werden.

Sortieren

Abbildung 10Die Sortierung kann nach unterschiedlichen Kriterien erfolgen (siehe Abb. 9 - oben).

Filtern

Bei längeren Datenlisten sind die Filterfunktionen hilfreich. Sie verwenden sie, um Datensätze, die bestimmten Kriterien entsprechen, anzuzeigen.
In Abbildung 4 und 5 sehen Sie, wie in der Tabelle Stadt der Terra-Datenbank im Attribut L_ID der Attributwert DK ausgewählt wurde. Mit der Autofiltern-Funktion werden nun nur noch Datensätze, deren Wert L_ID=“DK“ entspricht, angezeigt. In Abbildung 5 wurde außerdem nach der Einwohnerzahl aufsteigend sortiert. Das geschieht, indem Sie die Spalte „Einwohner“ durch Klicken auf den Spaltenkopf markieren und anschließend das Symbol Aufsteigend sortieren betätigen.

Abbildung 11Beachten Sie auch, dass nur die jeweils aktuelle Anzahl von Datensätzen angezeigt wird.

Bei der Verwendung des Standardfilters können mehrere Filterkriterien angewendet werden. Sehen Sie dazu Abbildung 6 und 7.

Abbildung 12 In der gefilterten Tabelle werden alle Städte Deutschlands, deren Namen mit einem n enden, aufgelistet.

AufgabenÁbbildung 13

  1. Wie viele Städte liegen in Bayern? [21]
  2. Welche Städte haben mehr als 850.000 Einwohner? [166]
  3. Welche Städte haben ein „tz“ im Namen? [3]
  4. Welche Städte haben keine Einwohner? [25]
  5. Welche Länder haben Hauptstädte, die mit „m“ beginnen? [21]
  6. Welche Länder haben mehr als 1 Mio., aber weniger als 10 Mio. Einwohner und Hauptstädte, die mit "m" beginnen. [7]

Guppieren und Rechnen

Ähnlich wie Sie bei längeren Datenlisten mit den Filterfunktionen von SO bestimmte Datensätze angezeigt haben, können Sie durch das Gruppieren und Berechnen von Teilergebnissen mehr Informationen gewinnen. << Dieser Absatz ist noch unvollständig. >>

Abfragen

Erstellen mit dem Autopiloten

  1. Wählen Sie
  1. Wählen Sie in der Liste die Option Datenbank au, werden die im entsprechenden Ordner vorhandenen Tabellen aufgeführt. Wählen Sie nun eine Tabelle aus.
  2. Suchen sie aus den vorhandenen Feldern die für die Abfrage benötigten aus.
  3. Nach einem Klick auf Weiter können Sie die Filterbedingungen in mehreren Stufen durch die Wahl aus den Angaben der Listen einstellen. Tragen Sie als Kriterium ein, welcher Vorgabe die Feldinhalte entsprechen sollen. Wird z. B. ein Ort gesucht, schreiben Sie den Namen hin. Sie müssen sich nicht um Angaben wie Gleichheits- oder Anführungszeichen kümmern. Diese werden vom Programm automatisch eingesetzt. Unterhalb der Zeile Kriterium sehen Sie weitere Zeilen mit der Bezeichnung Oder. Mit ihnen und mit der Zeile Kriterium stellen Sie zusammengesetzte Bedingungen auf. Alle Bedingungen, die Sie in derselben Spalte! untereinander eintragen, werden durch ein logisches Oder verknüpft. Für alle Bedingungen in derselben Zeile nebeneinander gilt ein logisches Und.
  4. In diesem Schritt können Sie schon die Schaltfläche Vorschau anklicken. Betrachten Sie das Ergebnis im Beamer, und wählen Sie Weiter.
  5. Im nächsten Schritt legen Sie in bis zu vier Stufen das Abbildung 14 Sortieren fest. Mit einem Klick auf die Schaltflächen neben den Sortierfeldern stellen Sie von A-Z auf Z-A um und umgekehrt.
  6. Geben Sie noch einen Abfragetitel an, oder übernehmen Sie die Vorgabe. Mit der Wahl Fertigstellen beenden Sie die Einstellungen.

Sie können bei der Betrachtung eines Filterergebnisses den Beamer und das Desktop-Dokument gemeinsam verwenden, um sowohl die gesamte Tabelle als auch die durch die Abfrage gefilterte Tabelle zugleich anzusehen. Klicken Sie dazu im Explorer auf die betreffende Zeile der Abfrage und doppelt auf den Namen der Tabelle. Im Ergebnis sehen Sie die gefilterte Abfrage im Beamer und die gesamte Tabelle im Desktop-Dokument darunter.

Abbildung 15 Eine einmal angefertigte Abfrage können Sie immer wieder verwenden. Sie wird im Ordner Abfrage gespeichert. Um sie erneut zu starten, müssen Sie die Zeile im Explorer suchen und darauf doppelklicken. Die Abfrage wird sofort gestartet und des Ergebnis nach einer Wartezeit eingeblendet. Ein neuer Aufruf blendet ein vorher angezeigtes Ergebnis aus.

ST_NAME

EINWOHNER

Bautzen

 

Chemnitz

259187

Goerlitz

 

Manuell aufbauen

Reicht das im vorausgehenden Abschnitt vorgestellte Angebot des AutoPiloten für komplexe Abfragen nicht aus bauen Sie eine Abfrage gezielt manuell auf. Gehen Sie so vor:

  1. Starten Sie den Explorer. Markieren Sie den Ordner Abfrage, und beginnen Sie mit Neu – Abfrage aus dem Kontextmenü.
  2. Entscheiden Sie sich gegen den AutoPiloten und für die Entwurfsansicht, um eine manuelle Abfrage aufzubauen. 
  3. Tragen Sie einen Namen ein, und bestätigen Sie.
  4. Im Fenster Tabellen Hinzufügen müssen Sie sich entscheiden, auf Basis welcher Tabelle(n) die Abfrage durchgeführt werden soll. Markieren Sie die gewünschte Zeile, und wählen Sie Hinzufügen. Sie können die Daten einer Abfrage mehreren Tabellen entnehmen. Fügen Sie in diesem Fall die neuen Daten hinzu.
  5. Schalten Sie mit Schließen zum Fenster des Abfrageentwurfs.
  6. Klicken Sie auf das Icon Tabellen Hinzufügen, und wählen Sie aus der Liste, falls noch keine Liste mit Feldnamen angezeigt wird.
  7. Im nächsten Arbeitsgang ziehen Sie aus der Liste in der oberen Fensterhälfte Feldnamen in die Zeile FELD. Haben Sie in der ersten Zeile einen Namen angeordnet, wird der zugehörige Tabellenname automatisch in der zweiten Zeile eingefügt. Sie können die Anzeige ändern, wenn Sie auf den Pfeil rechts im Feld klicken und eine andere Wahl treffen. Wiederholen Sie die Einstellungen für weitere Felder.
  8. Klicken Sie unter einem Feld in die dritte Zeile, und wählen Sie bei Bedarf eine Sortierform.
  9. Abbildung 15Klicken Sie die Markierfelder in der Zeile Sichtbar nach Wunsch an.
  10. In den letzten Zeilen haben Sie Platz zur genauen Definition, welche Kriterien für einen Erfolg der Abfrage zutreffen müssen. Da Sie diese über fünf Ebenen staffeln können, lassen sich Abfragen hier präzise formulieren.
  11. Um die Abfrage zu testen, klicken Sie auf das Icon Abfrage Ausführen. Nach der Untersuchung können Sie das Fenster im Menü Datei oder mit dem Icon Schließen ausblenden.
  12. Nach einem Klick auf das Icon Abfrage Ausführen wird das Ergebnis im eigenen Fenster und mit einer Objektleiste zur Bedienung angezeigt. Diese Anzeige lässt sich mit den an gebotenen Icons weiter organisieren. Wenn Sie zunächst wissen wollen, wie viele Ergebnisse die Abfrage erbracht hat, klicken Sie auf das Icon Anzahl Datensätze.
  13. Stehen in der Abfrage nur Ergebnisse aus dem Feld mit den angegebenen Sortierkriterien, müssen Sie noch die Feldnamen einfügen, deren Inhalte zusätzlich angezeigt werden sollen. Legen Sie nur auf die Anzeige Wert, geben Sie keine Kriterien an. Klicken Sie nach einer solchen Änderung nochmals auf das Icon Abfrage Ausführen. Wollen Sie neu beginnen, aktivieren Sie zuvor das Icon Filter Entfernen.

SQL

Der Begriff »Structured Query Language« bezeichnet eine strukturierte Abfragesprache für Datenbanken. In den meisten Fällen werden Sie Abfragen mit dem AutoPiloten anlegen. Sie können aber auch direkt oder interaktiv SQL per Maus und Abfrageformular zum Beschreiben von Datenbankabfragen benutzen. Aus den Einträgen im Formular legen Sie die zugehörige SQL-Abfrage an. Diese können Sie bearbeiten oder direkt eingeben.

Nutzen Sie den AutoPiloten, und gehen Sie folgendermaßen vor, um eine entsprechende Abfrage aufzubauen:

  1. Aktivieren Sie im Explorer die Datenbank, für die die Abfrage gelten soll.
  2. Wählen Sie die Zeile Abfragen und im Kontextmenü Neu – Abfrage. Legen Sie einen Namen fest, stellen Sie im Abfrage formular oben zunächst die benötigte Tabelle ein, und tragen Sie unten in tabellarischer Form die Abfrage ein.
  3. Übernehmen Sie aus dem oberen Teil des Abfrageformulars Datenfelder in die Tabelle.
  4. Die im Abfrageformular durch Klicken und wenige Einträge zusammengestellte Abfrage ist gleichzeitig in SQL übersetzt worden. Das Abfrageformular besteht aus zwei Registern. Wenn Sie durch Anklicken der Registerzunge SQL am unteren Rand um schalten, sehen Sie die gleiche Abfrage in der Formulierung durch die SQL-Sprache.
  5. Klicken Sie auf das Icon Abfrage Ausführen, wird das Ergebnis im Beamer angezeigt.

Verwenden Sie das Register SQL am unteren Rand des Abfrageformulars, wenn Sie die Abfrage direkt in der Abfragesprache SQL formulieren wollen.
Der in Abbildung 8 gezeigten Abfrage entspricht die folgende SQL-Anweisung:
SELECT I_NAME AS Inseln FROM INSEL WHERE INSELGRUPPE = 'Philippinen'.

Wenn Sie Abfragen durch Anklicken zusammenstellen und zur SQL- Darstellung umschalten, werden Sie feststellen, dass die SQL-Formulierungen leicht zu verstehen sind. Die möglichen Inhalte sind allerdings sehr umfangreich und werden ausführlich in eigenen Publikationen behandelt. Für die tägliche Arbeit wird im allgemeinen die Verwendung des AutoPiloten die effektivere Technik sein.
Weitere Ausführungen zu SQL finden Sie in "Praxis SQL".

Daten als Bericht herausgeben

Gespeicherte Datenbanken können Sie auf dem Bildschirm anzeigen oder drucken. Am elegantesten ist dies mit einem Bericht möglich. Ein Bericht ist eine Zusammenfassung von Ausgabedaten. Mit dem Aufbau, der Gestaltung und Ausgabe eines Berichtes können Sie die folgenden Arbeiten erledigen:

Berichte können außerdem am Bildschirm angezeigt, für die weitere Verwendung gespeichert oder auf Papier ausgegeben werden.
<< Dieser Absatz ist noch unvollständig. >>