<!-- <!DOCTYPE chapter PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd"> --> <sect1 id="designing-queries"> <title >Entwurf von Datenbankabfragen</title> <para >Der wichtigste Zweck einer Datenbank ist die Speicherung und Hilfe bei der Auswertung der gesuchten Informationen. Anders als bei Datenbanken auf Papier können Sie für Datenbanken in &kexi; mehrere Bedingungen für eine Suche angeben. Die Ergebnisse werden sogar aus großen Datenbanken schneller ausgegeben. Dies zeigt die Leistungsfähigkeit von Datenbanken, aber um effektive <emphasis >Abfragen</emphasis > stellen zu können, müssen Sie die Formulierung von Abfragen für die gesuchten Informationen erlernen. </para> <para >Mit Datenbankabfragen können Sie den Umfang der Daten auf einen vorgegebenen Satz von Zeilen und Spalten begrenzen und auch gleichzeitig dynamisch Daten aus mehreren Tabellen miteinander <firstterm >verbinden</firstterm >. </para> <para >Um zu sehen, wie Abfragen in der Praxis benutzt werden, erstellen Sie eine Abfrage <literal >Kontakte</literal >, die die Daten aus zwei Tabellen <literal >Personen</literal > und <literal >Telefon_Nummern</literal > aus den vorherigen Kapiteln miteinander verbindet. </para> <procedure> <step> <para >Erstellen Sie eine neue leere Abfrage mit <menuchoice ><guimenu >Einfügen</guimenu ><guimenuitem >Abfrage ...</guimenuitem ></menuchoice > in der Menüleiste. Die Abfrage wird im Entwurfsfenster geöffnet. Das Fenster ist in zwei Bereiche aufgeteilt: oben die Abfragebeziehungen und unten die Abfragespalten. </para> </step> <step> <para >Wählen Sie die Tabelle <literal >Personen</literal > im dem Auswahlfeld <guilabel >Tabelle:</guilabel > oben im Fenster und klicken Sie auf <guibutton >Hinzufügen</guibutton >. Eine graphische Darstellung der Tabelle wird im Bereich Abfragebeziehungen angezeigt. Fügen Sie auch die Tabelle <literal >Telefon_Nummern</literal > auf die gleiche Weise ein. </para> <!--<screenshot> <screeninfo ><literal >contacts</literal > query design</screeninfo> <mediaobject> <imageobject> <imagedata fileref="img/05_03_00_query_design.png" format="PNG"/> </imageobject> <textobject> <phrase ><literal >contacts</literal > query design</phrase> </textobject> </mediaobject> </screenshot >--> </step> <step> <para >Fügen Sie Abfragebeziehungen durch Ziehen und Ablegen mit der Maus hinzu: Klicken Sie auf das Feld <literal >ID</literal > in der Tabelle <literal >Personen</literal > und ziehen Sie es zum Feld <literal >Personen</literal > in der Tabelle <literal >Telefon_Nummern</literal >. Damit <emphasis >verbinden Sie die beiden Felder durch eine neue Beziehung</emphasis >. </para> </step> <step> <para >Doppelklicken Sie auf das Feld <literal >Name</literal > in der Tabelle <literal >Personen</literal >, um das Feld als <firstterm >Abfragespalte</firstterm > hinzuzufügen. Auf die gleiche Weise fügen Sie die Felder <literal >Nachname</literal >, <literal >Straße</literal >, <literal >Hausnummer</literal > und <literal >Stadt</literal > aus der Tabelle <literal >Personen</literal > und das Feld <literal >Telefon</literal > aus der Tabelle <literal >Telefon_Nummern</literal > ein. </para> </step> <step> <para >Der Abfragenentwurf ist jetzt bereit für einen Test. Klicken Sie auf den Knopf <guibutton >Zur Datenansicht wechseln</guibutton > in der Werkzeugleiste, um vom Entwurf zur Datenansicht zu wechseln und das Ergebnis der Abfrage zu sehen. </para> <!--<screenshot> <screeninfo ><literal >Contacts</literal > query results</screeninfo> <mediaobject> <imageobject> <imagedata fileref="img/05_03_00_query_results.png" format="PNG"/> </imageobject> <textobject> <phrase ><literal >Contacts</literal > query results</phrase> </textobject> </mediaobject> </screenshot >--> </step> <step> <para >Speichern Sie den Abfrageentwurf für eine spätere Wiederverwendung durch Klicken auf den Knopf <guibutton >Objektänderungen speichern</guibutton > in der Werkzeugleiste. Sie können auch <menuchoice ><guimenu >Datei</guimenu > <guimenuitem >Speichern</guimenuitem ></menuchoice > im Menü benutzen oder die Tasten <keycombo action="simul" >&Ctrl;<keycap >S</keycap ></keycombo > drücken. Da der Abfrageentwurf noch nicht gespeichert wurde, müssen Sie dafür einen Namen eingeben. Geben Sie <literal >Kontakte</literal > in das Feld <guilabel >Titel</guilabel > ein und drücken Sie dann auf <guibutton >OK</guibutton >. </para> </step> </procedure> </sect1>