• Keine Ergebnisse gefunden

Fachhochschule Regensburg Studiengang Wirtschaftsinformatik Datenbanksysteme WS 2001/02

N/A
N/A
Protected

Academic year: 2021

Aktie "Fachhochschule Regensburg Studiengang Wirtschaftsinformatik Datenbanksysteme WS 2001/02"

Copied!
12
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Aufgabe 1 (Tabellen)

In unserem Flugbuchungssystem werden die Daten der Flugverbindungen in der Tabelle SPFLI gespeichert.

1. Geben Sie Kardinalität und Grad der Relation an!

2. Nennen Sie die Attribute und den Primärschlüssel der Relation!

3. Können Sie andere Schlüsselkandidaten erkennen?

4. Welche Fremdschlüssel erkennen Sie? Springen Sie über die Navigation zu einer Prüftabelle!

5. Berechnen sie das Ergebnis folgender Operationen. Testen Sie Ihre Antworten mit der Funktion „Inhalt“ im Dictionary des SAP-Systems:

a. Verbindungen der LH von Frankfurt nach Berlin

b. Verbindungen der LH nach Berlin von einer anderen deutschen Stadt aus

c. Anzahl der Verbindungen nach Amerika.

Aufgabe 2 (Tabellen)

In unserem Flugbuchungssystem werden die Daten der Flugreservierungen in der Tabelle SBOOK gespeichert.

6. Geben Sie Kardinalität und Grad der Relation an!

7. Nennen Sie die Attribute und den Primärschlüssel der Relation!

8. Können Sie andere Schlüsselkandidaten erkennen?

9. Welche Fremdschlüssel erkennen Sie? Springen Sie über die Navigation zu einer Prüftabelle!

10. Berechnen sie das Ergebnis folgender Operationen. Testen Sie Ihre Antworten mit der Funktion „Inhalt“ im Dictionary des SAP-Systems. Bitten denken Sie daran, dass diese Tabelle ca. 55.000 Einträge enthält:

a. Die Piloten der AA haben angekündigt, am 20.2.2002 zu streiken. Sie müssen alle Passagiere finden, die an diesem Tag mit der AA gebucht haben! Wir gehen Sie vor?

b. Der Kunde „Schumacher Beratung“ ruft an und will einen Flug verschieben. Wie gehen Sie vor?

(2)

Aufgabe 3 (Tabellen)

Unser Beispiel hat noch zwei weitere wichtige Tabellen:

a. SCARR die Tabelle der Fluggesellschaften b. SFLIGHT die Tabelle der Flüge.

Versuchen Sie selbständig, ähnliche Fragen zu formulieren, wie sie in den Aufgaben 1 und 2 stehen und finden Sie die Antworten heraus!

Bemerkungen

2. Ich bitte zur Aufgabe 3 um Beiträge mit möglichst komplizierten Fragestellungen und möglichst eleganten Lösungen bis zur nächsten Übungsstunde! Das Spiel gewinnt der Student/Studentin mit der schwierigsten Frage!

3. Versuchen Sie immer am Ende Ihrer Überlegungen die gefundene Lösung in Form einer SQL-Anweisung auszudrucken. Sie werden sehen, dass es gar nicht so leicht ist... Dafür sind wir ja noch am Anfang des Semesters!

(3)

Bitte zu Beginn das Beispielprogramm Z1D99_SELECT kopieren!

Aufgabe 4 (SQL)

In unserm Flugbuchungssystem werden die Daten der Flugverbindungen in der Tabelle SPFLI gespeichert.

¾ Finden Sie Kardinalität der Relation mit Hilfe eines SQL-Befehls!

¾ Schreiben Sie ein Programm, das folgende Daten liefert:

o Verbindungen der LH von Frankfurt nach Berlin mit Abflug- und Ankunftszeiten

o Verbindungen der LH nach Berlin von einer anderen deutschen Stadt aus mit Abflugort sowie Abflug- und Ankunftszeiten

o Anzahl der Verbindungen nach Amerika.

Aufgabe 5 (SQL)

In unserem Flugbuchungssystem werden die Daten der Flugreservierungen in der Tabelle SBOOK gespeichert.

¾ Finden Sie Kardinalität der Relation mit Hilfe eines SQL-Befehls!

¾ Schreiben Sie ein Programm, das folgende Daten liefert: „Die Piloten der AA haben angekündigt, am 20.2.2002 zu streiken. Erzeugen Sie eine Liste aller Buchungen für diesen Tag“.

Aufgabe 6 (SQL)

Unser Beispiel hat noch zwei weitere wichtige Tabellen:

a. SCARR die Tabelle der Fluggesellschaften b. SFLIGHT die Tabelle der Flüge.

Versuchen Sie selbständig, ähnliche Fragen zu formulieren, wie sie in den Aufgaben 1 und 2 stehen und beantworten Sie diese mit Hilfe von SQL-Befehlen!

(4)

Bemerkungen

Das SAP-System hat nur eine Teilmenge der SQL-Definition implementiert. Sie nennt sich Open-SQL. Darüber hinaus existieren Unterschiede in der Schreibweise. Open- SQL enthält auch Befehle, die in SQL nicht vorgesehen sind.

Aus diesen Gründen sollten Sie sich bitte an die Programmvorlagen halten und Ihre SQL-Anweisungen dort unterbringen. Bitte stellen sie sofort Fragen, wenn etwas nicht so funktioniert, wie Sie sich das vorgestellt haben!

Hier einige Besonderheiten in Open-SQL, die Sie heute beschäftigen werden:

¾ Die SELECT-Anweisung ist eine Schleife: Damit verfügen sie automatisch über eine Kontrollstruktur mit deren Hilfe Sie Ihre Ergebnisse gleich ausgeben können!

¾ Nach der SELECT-Anweisung muss i.d.R. eine INTO-Klausel folgen. Das ist beim eingebettetem SQL üblich! Damit können Sie Ihre Ergebnisse zwischenspreichen und später verarbeiten.

¾ In der SELECT-Klausel sind keine Ausdrücke zugelassen!

¾ Die Qualifikation der Attribute geschieht in folgender Syntax:

Attribut~Tabelle

Bitte beachten Sie, dass die SQL-Notation heißt: Tabelle.Attribut

(5)

Aufgabe 7 (SQL-Statistikfunktionen)

Entwerfen Sie ein Programm, das folgende Fragenstellungen beantwortet:

¾ Alle Flugverbindungen mit Fluggesellschaft, Flugnummer und Abflugort, sortiert nach dem Abflugort

¾ In der Tabelle SFLIGHT sind die verfügbaren und belegten Plätze der einzelnen Flüge gespeichert. Finden Sie heraus:

o die maximale und minimale Anzahl sowie die im Durchschnitt belegten Plätze aller Flüge

o Tun Sie das gleiche bezogen auf die einzelnen Fluggesellschaften o Schränken Sie die Ausgabe ein auf die Fluggesellschaften, die im Mittel

mindestens 100 Passagiere pro Flug befördern.

¾ Ausgabe der Anzahl der Passagiere und des durchschnittlichen Gewichtes des Gepäcks aller Flüge gruppiert nach Fluggesellschaft und Verbindung. Es sollen nur Verbindungen berücksichtigt werden, die ein mittleres Gewicht von über 3 Kg pro Passagier aufweisen.

(6)

Fachhochschule Regensburg Studiengang Wirtschaftsinformatik

Datenbanksysteme WS 2001/02

Prof. Dr. A. Tsakpinis

Übungsblatt 4

Aufgabe 8

Beantworten Sie folgende Fragen:

• Gesucht sind alle Flüge der LH, die noch freie Plätze haben

• Alle noch nicht ausgebuchten Flüge von Frankfurt nach New York zwischen dem 1.12.2001 und dem 28.2.2002

• Gesucht sind die Flüge mit den meisten Passagieren

• Es wird eine Liste mit den Kundennummern der Kunden (bzw. des Kunden) gesucht, die die meisten Buchungen gemacht haben

• Finden Sie alle Kunden der LH, deren Namen mit einem bestimmten Buchstaben (Ihrer Wahl) beginnt.

• Geben Sie eine Liste der Buchungen aus sortiert nach Fluggesellschaft mit Angabe des Kundennamens, des Abflugorts und des Abflugdatums. In der Ausgabe sollte jeweils eine Gruppenüberschrift enthalten sein, in der der Name der Fluggesellschaft enthalten ist.

(7)

Aufgabe 9

Sie arbeiten am Flughafen in der EDV-Abteilung und erhalten die Information, dass ein Flug storniert werden musste. Dafür wird am darauf folgenden Tag ein Ersatzflug angeboten. Was müssen Sie alles machen, um die Passagiere umzubuchen? Bitte nehmen Sie unterschiedliche Termine, damit die Übung reibungslos klappen kann!

Tragen Sie zunächst lediglich die Primärschlüssel der betroffenen Tabellen ein.

Ergänzen Sie dann schrittweise die weiteren Attribute!

(8)

INSERT: SAP-Syntax SQL:

SAP : Einfügen einzelner Zeilen:

data: wa type spfli.

wa-carrid = 'LH'.

wa-connid = '902'. " und 401

insert into spfli values wa.

Alternativ kann ich den Tabellennamen auch dazu “mißbrauchen”:

spfli-connid = '401'.

spfli-carrid = 'LH'.

insert into spfli.

SAP: Eintragen mehrerer Zeilen:

Die Option, die Zeilen per SELECT-Anweisung direkt zu holen, funktioniert nicht.

Man muss die Zeilen mit einer separaten SELECT-Anweisung holen und zwischenspeichern:

data: wa_table type table of spfli.

select * from spfli into table wa_table where carrid = 'LH'.

insert spfli from table wa_table.

UPDATE: SAP-Syntax SQL

SAP:

update spfli

set: cityfrom = 'FRANKFURT' cityto = 'BERLIN' where carrid = 'LH' and connid = '902'.

Generell: Abfrage, ob eine DB-Operation geklappt hat:

If sy-subrc = 0. “ Fehlerfrei else. “ hat nicht funktioniert endif.

(9)

Aufgabe 10

Sie sollen eine relationale Datenbank aufbauen, die folgende Sachverhalte berück- sichtigt:

• Es sollen Mitarbeiterdaten eines Unternehmens gespeichert und verwaltet wer- den. Zu den Stammdaten eines Mitarbeiters gehören neben seinem Namen und einer eindeutigen Personalnummer auch seine Adressdaten.

• Ein Mitarbeiter ist in einer Abteilung tätig und arbeitet i.a. an mehreren Produkten jeweils zu einem vorgegebenen Prozentsatz seiner Arbeitszeit.

• Das Unternehmen ist in Abteilungen strukturiert, die eine Bezeichnung haben. Sie beschäftigen i.d.R. mehrere Mitarbeiter.

• Produkte tragen ebenfalls einen Namen. An einem Produkt arbeiten i.d.R. mehre- re Mitarbeiter.

Bitte sorgen Sie dafür, dass Sie am Ende ein Relationenmodell in der 3. NF erhal- ten. Sie sollten jedoch dabei eine Lösung finden, die alle Zwischenstufen des Norma- lisierungsprozesses durchmacht!

Aufgabe 11

Bestimmen Sie alle funktionalen und mehrwertigen Abhängigkeiten in der folgenden Relation. Führen Sie die Relation in die 3. Normalform!

Tafel 342

76 Do

318 Mathematik I

Tafel 342

76 Mo

418 Mathematik I

Projektor 111

86 Di, Mi

413 Programmieren

Projektor 210

53 Mi, Fr

209 Grafische DV

Hilfsmitt Dozent

Anzahl Termin

Raum

Vorlesung

(10)

Aufgabe 12

Die folgende Tabelle sonn in die dritte Normalform überführt werden (Prüfungs- geschehen):

PNR Fach Prüfer MatrNr Name GebDatum Adresse Fachbereich FBName Dekan Note

3 Inf Reis 123456 Huber 111169 .... 11 Ing.-

Wiss.

Walter 3

321 Ele Wurm 876543 Schmidt 201165 .... 11 Ing.-

Wiss.

Walter 2

Aufgabe 13

Das Bundesamt für KFZ-Wesen hat in einem ersten Entwurf folgende Relationen aufgestellt, um Verkehrssünder zu registrieren:

Eigentümer (PKZ, Name, Adresse, Auto) Auto (KFZNR, Typ, Farbe, Eintrag)

Fahrer (PKZ, Adresse, Führerschein, Führerscheinentzug, Eintrag) Eintrag (LFDNR, Datum, Art, Strafpunkte)

Führerschein (FNR, Ausstellungsdatum, Klasse, Ausstellungsrot).

Folgende Bedingungen sind zu unterstellen:

1. Jedes Auto kann nur einen Eigentümer, ein Eigentümer aber mehrere Autos haben.

2. Ein Auto und ein Fahrer sind jeweils mit einem Eintrag betroffen. Pro Auto und Fahrer können mehrere Einträge existieren, d.h. ein Fahrer kann sich Einträge mit verschiedenen Autos einhandeln. Die Laufende Nummer (LFDNR) bezieht sich auf das Auto.

3. Pro Fahrer können mehrere Führerscheine registriert sein.

Führen Sie das relationale Datenbankschema in die 3. Normalform! Zeichnen Sie anschließend die zugehörigen ER-Diagramme!

(11)

Aufgabe 14 (ER-Diargamme)

Die Datenanalyse bei einer Luftverkehrgesellschaft hat folgendes ergeben:

Der gesamte Luftverkehr ist in Segmente unterteilt. Ein Segment stellt die Ver- bindung zwischen zwei Orten zu einer bestimmten Abflug- und Ankunftszeit her. Für jedes Segment wird täglich ein Flugplan gefertigt.

Flüge werden eindeutig durchnummeriert. Jedes Flugzeug hat abhängig von seinem Typ eine bestimmte Anzahl von Sitzplätzen der 1. und der 2. Klasse und wird mit Begleitpersonal ausgestattet. Für die Bemannung der Flugzeuge existieren verschiedene Typen, die jeweils die Anzahl der Piloten und Stewardessen festlegen.

Um die Reservierung von Flügen zu erleichtern, werden alle noch offenen Flüge gesondert geführt, mit der noch frei verfügbaren Kapazität an Plätzen der 1. und 2.

Klasse.

Bei Buchungen muss der Flug und die Agentur angegeben werden. Passagiere werden mit ihrem Namen, Adresse und Telefonnummer registriert.

Das Personal der Fluggesellschaft ist unterteilt in Flugpersonal und Bodenpersonal.

Flugpersonal muss über eine Flugerlaubnis verfügen und darf eine maximale Anzahl von Flugstunden nicht übersteigen. Bodenpersonal hat im Gegensatz zu Flugpersonal einen bestimmten Einsatzort.

Für das Flugpersonal wird ein Flugdienstplan gefertigt, in dem für jeden Flug das Flugpersonal mit jeweils einem Vertreter aufgeführt sind.

• Identifizieren Sie die im Anwendungsbereich vorkommenden Objekte und Objekt- typen, ihre Merkmale sowie ihre Beziehungen zueinander.

• Zeichen Sie die ER-Diagramme

• Führen Sie das ER-Modell in ein relationales Datenbankschema über.

(12)

Aufgabe 15 (ER-Diargamme)

Ein Unternehmen sei in Abteilungen strukturiert, die durchnummeriert und benannt sind. Eine Abteilung hat genau einen Abteilungsleiter. Mitarbeiter können an mehreren Projekten beteiligt sein, jeweils mit einem Prozentsatz ihrer Arbeitszeit.

Projekte werden mit einer eindeutigen Nummer versehen und tragen eine Bezeichnung.

Jeder Abteilung sind eine Reihe von Maschinen zugeordnet, wobei eine Maschine durchaus gleichzeitig von mehreren Abteilungen genutzt werden kann. Für die Bedienung der Maschinen ist Personal eingeteilt. Ein Mitarbeiter kann in der Regel mehrere Maschinen bedienen.

Eine Maschine kann für die Produktion verschiedener Teile eingesetzt werden. Ein Teil kann in der Regel mit mehreren Maschinen produziert werden.

• Identifizieren Sie die im Anwendungsbereich vorkommenden Objekte und Objekt- typen, ihre Merkmale sowie ihre Beziehungen zueinander.

• Zeichen Sie die ER-Diagramme

• Führen Sie das ER-Modell in ein relationales Datenbankschema über.

Referenzen

ÄHNLICHE DOKUMENTE

ausgegeben werden (Umrechnung: Für 1 Euro erhält man 0.86 Dollar).

Es ist jedoch auch möglich, Standarddienste aus einem eigenen Programm über einen Socket anzusprechen. Darin findet sich u.a.. Steckdosen) werden in Java durch die

Richtet sich die Höhe dieser „Kommunikationskosten“ nach der Menge der Daten, oder nach der Menge der Information, die Sie von dieser Initiative

Ja: Information sind Daten (=Angaben, die etwas kennzeichnen), die Entschei- dungen beeinflußen können; andernfalls enthalten Daten keine Information. c) Bei Ihrer

übergebenen Paramerter bleibt dabei unbestimmt, ein weiterer interessiert nur als „Kennwert“ für eine bestimmte Aufgabe, zwei andere erhalten Werte, die uns als

[ Sw-Plattform: Sw-Schicht, die die Kommunikation mit der Hw (oder zu den die Hw kapselnden Schichten) komplett übernimmt – somit Hw- nächste genutzte Sw-Schicht in einem Programm Ù

- 15 Studierende haben an der Befragung teilgenommen - Befragung wird alle 3 Jahre durchgeführt – Vergleich der.. Ergebnisse mit denen aus dem

​GdB/GdS GdS während einer Heilungsbewährung von ​2 Jahren nach Entfernung eines malignen.. Darmtumors im Stadium (T1 bis T2) N0 M0 oder von lokalisierten Darmkarzinoiden 50