anfragesprachen – dipl. ing. ulrich borchert / fh merseburg1/10

10
Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg 1/10 Grafische Anfragesprachen Geeignet sind grafische Anfragesprachen für Nutzer, die keine speziellen Kenntnisse der Informatik oder keine Datenbankkenntnisse haben. Textuelle Anfragesprachen sind für beide Gruppen ungeeignet. Vorteil grafischer Anfragesprachen Sie vereinfachen die Formulierung von Anfragen durch die Verwendung grafischer Primitive. Dadurch wird die Bedeutung einer Anfrage hervorgehoben, was wiederum hilft, die Anfrage leichter zu erfassen.. Ein weiterer Vorteil liegt in der Einschränkung der Fehler durch Fehleingabe bei der Formulierung einer Anfrage.

Upload: cheyenne-frazier

Post on 31-Dec-2015

41 views

Category:

Documents


6 download

DESCRIPTION

Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg1/10. Grafische Anfragesprachen Geeignet sind grafische Anfragesprachen für Nutzer, die keine speziellen Kenntnisse der Informatik oder keine Datenbankkenntnisse haben. Textuelle Anfragesprachen sind für beide Gruppen ungeeignet. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg1/10

Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg 1/10

Grafische Anfragesprachen

Geeignet sind grafische Anfragesprachen für Nutzer, die keine speziellen

Kenntnisse der Informatik oder keine Datenbankkenntnisse haben. Textuelle

Anfragesprachen sind für beide Gruppen ungeeignet.

Vorteil grafischer Anfragesprachen

Sie vereinfachen die Formulierung von Anfragen durch die Verwendung

grafischer Primitive. Dadurch wird die Bedeutung einer Anfrage hervorgehoben,

was wiederum hilft, die Anfrage leichter zu erfassen.. Ein weiterer Vorteil liegt in

der Einschränkung der Fehler durch Fehleingabe bei der Formulierung einer

Anfrage.

Page 2: Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg1/10

Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg 2/10

Nachteil grafischer Anfragesprachen

Grafische Anfragen können durch den Rechner nicht direkt ausgewertet werden.

Durch die textuelle Umsetzung und die anschließende Verarbeitung vergrößert

sich die Rechnerleistung und der Speicheraufwand.

Durch den fehlenden textuellen Zusammenhang ist der Syntax und die Semantik

nicht eindeutig. Das betrifft Anfragesprachen, die rein mit grafischen Elementen

arbeiten.

Page 3: Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg1/10

Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg 3/10

MS Access

Die grafische Anfragesprache QBE ist in Reinform kommerziell nicht verfügbar.

Verwirklicht wurde eine grafische Anfragesprache mit MS Access.

MS Access ist ein Datenbankprogramm unter dem Betriebssystem Windows, in

dem Basisrelationen (Tabellen) mit Schlüsseln definiert werden können.

Anfragen werden grafisch definiert und in SQL übersetzt (kein Standard SQL).

Neben reinen Anfragen können auch Formulare und Berichte interaktiv definiert

werden.

Page 4: Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg1/10

Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg 4/10

Umsetzungsbeispiele

Eine Selektion in Kombination mit der Projektion erfolgt in der Auswahlabfrage,

wenn man in der Auswahlbox in der Zeile Anzeige das √ in den unrelevanten

Bereichen entfernt wurde.

Selektionen werden in der Zeile Kriterien mit Konstanten oder

Vergleichssymbolen den zugehörigen Spalten zugeordnet. Die

Selektionsbedingungen werden mit „und“ verknüpft.

Der „between“ Operator und der „like“ Operator von SQL wird in Access mit

„zwischen“ und „wie“ ausgedrückt.

Page 5: Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg1/10

Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg 5/10

Andere grafische Anfragesprachen

Nennenswert ist Borlands Paradox und dbase

Das System Paradox, wenn auch in einer anderen Hinsicht kein volles RDBMS,

bietet als Anfrageschnittstelle einen QBE-Dialekt zum interaktiven Arbeiten mit

Tabellen. Für die Anwendungsprogrammierung wird eine linearisierte Form von

QBE zusammen mit Kontrollstrukturen imperativer Programmiersprachen

eingesetzt.

Page 6: Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg1/10

Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg 6/10

Schemaunabhängige Sprachen

Anfrageformulierungen mittels SQL erfordern die exakte Kenntnis der definierten

Relationsschemata. Der Ansatz der Universalrelationen-Anfragen hat das Ziel,

dem Anwender diese Notwendigkeit abzunehmen und statt dessen nur zu

erwarten, dass er die für die Anfrage relevanten Attribute kennt.

Ziel von Universal Anfragesprachen ist die Formulierung von Anfragen ohne

explizite Verbunde. Diese Verbunde können in SQL sehr aufwendig sein und

fordern genaue Kenntnisse der Relationen und der Fremdschlüsselbedingungen.

(Ein Fremdschlüssel [engl. foreign key] ist eine Attributliste X in einen

Relationsschema R1, wenn in einem Relationsschema R2 eine kompatible

Attributliste Y Primärschlüssel ist und die Attributwerte zu X in der Relation r1

(R1) auch in den entsprechenden Spalten Y r2(R2) enthalten sind.)

Page 7: Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg1/10

Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg 7/10

Der Benutzer stellt sich eine „Universalrelation“ mit allen in der Datenbank

vorhandenen Attributen vor. Zur eigentlichen Anfragenformulierung werden dann

im wesentlichen nur noch Projektierung und Selektierung benötigt.

Beispiele einer Universal Anfrage

Gegeben sein ein Datenbankschema mit drei Relationen [Prüfer], [Studenten] und [Prüfungen].In SQL müsste eine die drei Relationen übergreifende Anfrage wie folgt formuliert werden:

select Namefrom Studenten, Prüfer, Prüfungenwhere Studenten, Matrnr = Prüfungen.Matrnrand Prüfungen.Prüfernr = Prüfer.Prüfernrand Prüfername = ´Meier-Schulze-Lehmann``

Page 8: Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg1/10

Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg 8/10

Im Universalrelationensatz könnte man die entsprechende Anfrage wie folgt formulieren

select Namewhere Prüfername = ´Meier-Schulze-Lehmann``

Die zugehörigen Relationen und notwendigen Verbunde sind nun vom System

selbst zu bestimmen.

Page 9: Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg1/10

Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg 9/10

Interpretation

Diese genannte detaillierte Anfrage lässt sich bezüglich einer Universalrelation

[ r (U )] wie folgt formulieren:

π Name ( σ Prüfername = `Meier-Schulze-Lehmann´´ (r (U )))

Ebenso kann diese Relation durch den Verbund aller Basisrelationen (1-3)

ausgedrückt werden, was folgender Ausdrucksweise entspricht.

π Name (σ Prüfername = `Meier-Schulze-Lehmann´

(r (Prüfer) r (Prüfungen)

r (Studenten)))

Page 10: Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg1/10

Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg 10/10

Intern erfolgt eine eventuelle Umformung.

Voraussetzung für diese Methode ist ein sinnvoller DB-Entwurf, der eine

eindeutige Umsetzung der Anfrage ermöglicht.

Wichtig ist dabei die Eindeutigkeit globaler Attributnamen. Das Schema muss

zudem azyklisch sein, d.h. die Verbindung über Fremdschlüsseln von einem

Attribut zu einem anderen muss eindeutig bestimmt sein.