Abfragesprachen ◦ ?

Datenbanksysteme unterscheiden prozedurale und deklarative Abfragesprachen:

- Prozedurale Abfragesprachen verlangen, dass die Benutzerin mehrere programmiersprachliche Anweisungen in der richtigen Reihenfolge eingibt. Diese Anweisungen manipulieren isolierte Tabellensätze. Man nennt deshalb prozedurale Datenbanksprachen auch satz orientiert. Die Anweisungen sind meist Teil von Wiederholungs- und Entscheidungsanweisungen. Abfrageprozeduren können Sie in Access mit VBA und den systemdefinierten Objekten einer Datenzugriffsbibliothek wie DAO formulieren.
- Eine deklarative Abfragesprache kann eine Abfrage mit einer einzigen Anweisung ausdrücken. Innerhalb der Anweisung mag die Reihenfolge der Elemente zwar von Bedeutung sein, im Gegensatz zur prozeduralen Abfragesprache muss der Anwender aber nicht mehrere satzverarbeitende Anweisungen ordnen. Ausserdem sind die meisten Anweisungen so mächtig, dass sie nicht einen isolierten Satz, sondern eine Menge von Datensätzen verarbeiten. Deklarative Abfragesprachen heissen deshalb auch mengeno rientiert.

Die verbreitetsten deklarativen Abfragesprachen für relationale Datenbanken sind SQL und QBE. QBE ist weniger portabel, aber benutzerfreundlicher als SQL: Die Anwenderin markiert die Ergebnisspalten in den Gerüsten der beteiligten Tabellen und trägt die Kriterien für die Auswahl der Ergebniszeilen ein. Um die QBE-Abfragen von TESTS zu inspizieren ...

> 1. starten Sie Testverwaltung.mdb bzw. Access_Quiz.mdb mit »Umschalttaste/Eingabetaste,
> 2. wählen im Datenbankfenster die Schaltfläche »Abfragen.
> 3. gelangen mit einem »Rechtsklick zur gewünschten Abfrage und
> 4. mit einem weiteren Klick in deren »Entwurfsansicht.

Die Implementierung eines natürlichsprachlichen Abfrage-Frontends ist aufwändig. Das Abfragevokabular wird sich auf eine kleine spezialisierte Teilmenge der Umgangssprache beschränken müssen. Neue Datenbanken erfordern ausserdem oft eine Anpassung des Sprachumfangs, und die Grammatik der Abfragesprache lehnt sich nur unvollständig an jene der Umgangsprache an. Die Regel sind deshalb allgemeine formale Abfragesprachen wie QBE und SQL oder spezialisierte benutzerfreundliche Formularsprachen mit einfacher Syntax, aber restriktivem Funktionsumfang.