Übung 2 zum Datenbankentwurf

Werbung
R.O., 07.11.2008
Übung 2 zum Datenbankentwurf:
Erstellen verschiedener Varianten von SQL-Skripten:
Für den Diskursbereich "Studenten – Lehrveranstaltungen - Dozenten" sollen folgende
Festlegungen gelten:

Jeder Student kann an einer oder mehreren Lehrveranstaltungen teilnehmen.

An jeder Lehrveranstaltung nehmen mehrere Studenten teil.

Jede Lehrveranstaltung wird von einem Dozenten geleitet.

Jeder Dozent kann eine oder mehrere Lehrveranstaltungen leiten.
grundsätzlicher Hinweis: Dies ist keine Prüfung, sondern eine Übung! Das heißt, Sie
können mich jederzeit um Rat fragen, und Sie können mir auch die Ergebnisse aus den
einzelnen Arbeitsschritten zur Begutachtung vorlegen. Ungeachtet dessen möchte ich, dass
Sie mir am Ende einige Ihrer Ergebnisse als Mail zusenden.
Arbeitsschritte:
1.) Entwerfen Sie per Hand (d.h. ohne programmtechnische Hilfsmittel) ein dem
Diskursbereich entsprechendes Entity-Relationship-Diagramm.
2.) Überführen Sie dieses Diagramm auf dieselbe Weise in ein physisches
Datenbankdiagramm. Ergänzen Sie dabei alle Entity-Mengen um ein zusätzliches
Attribut als Identifikator (Datentyp integer; zulässige Werte zwischen 1.000 und 30.000)
3.) Legen Sie sich eine neue Datenbank "Lehrveranstaltungen" unter SQL_Anywhere an, in
der Sie alle folgenden Aufgaben unmittelbar im ISQL-Fenster ausprobieren können.
4.) Notieren Sie alle SQL-Anweisungen zum Erzeugen der benötigten Tabellen.
5.) Ergänzen Sie diese SQL-Anweisungen um weitere SQL-Anweisungen zum Eingeben
der benötigten Daten (siehe Tabelle "Dateninhalt").
6.) Speichern Sie dieses in den beiden vorangegangenen Schritten entstandene Skript
unter dem Namen "LV_1.SQL".
7.) Fertigen Sie für denselben Diskursbereich nochmals einen konzeptuellen Entwurf an,
jetzt aber mit Hilfe des Programms PowerDesigner. Bevor Sie die einzelnen EntityMengen anlegen, definieren Sie eine eigene Domäne (domain, Definitionsbereich):
Datentyp integer; zulässige Werte zwischen 1.000 und 30.000. Benutzen Sie diese
Domäne stets für die Identifikatorattribute der Entity-Mengen.
8.) Überführen Sie diesen Entwurf (wieder mit dem PowerDesigner) in ein physisches
Datenbankschema, passend zum DBMS SQL_Anywhere.
9.) Lassen Sie sich vom PowerDesigner aus diesem Schema ein SQL-Skript erzeugen, und
speichern Sie dieses Skript unter dem Namen "LV_2.SQL".
10.) Ergänzen Sie auch das Skript "LV_2.SQL" um die Eingabeanweisungen aus Punkt 5.
11.) Löschen Sie alle Objekte in der Datenbank "Lehrveranstaltungen" (oder legen Sie sich
eine weitere Datenbank an), und lassen Sie das bei Punkt 9 entstandene Skript
abarbeiten.
12.) Rufen Sie unter Sybase-Central die Funktion "Datenbank entladen (unload database)"
auf.
13.) Geben Sie dem zu erstellenden Skript den Namen "LV_3.SQL", lassen Sie Struktur und
Daten entladen, und speichern Sie die SQL-Anweisungen und die Daten
zweckmäßigerweise in ein neues Verzeichnis.
14.) Sehen Sie sich an, was im letzten Schritt in Ihrem Verzeichnis angelegt wurde.
15.) Vergleichen Sie die drei entstandenen SQL-Skripte (LV_1.SQL, LV_2.SQL und
LV_3.SQL) sorgfältig miteinander und notieren Sie die wesentlichen Unterschiede in
einer Tabelle wie der folgenden:
LV_1.SQL
LV_2.SQL
LV_3.SQL
16.) Schicken Sie mir eine e-Mail:
- Empfänger:
[email protected]
- Betreff:
LV, Ihr_Name
- Mailtext:
leer
- Anhänge:
LV_1.SQL und die Tabelle aus der letzten Aufgabe.
Viel Erfolg!
Dateninhalt:
Studenten
LV
Dozenten
MNr
Name
Vorname
Geb_Ort
IMJ
LVNr
Bez
SWS
Sem
DNr
Name
Vorname
Wohnort
1004
Berger
Bernd
Bernau
2007
20.005
BS
2
2
25.001
Braun
Beate
Berlin
1004
Berger
Bernd
Bernau
2007
20.107
DB
2
1
25.002
Gerber
Gert
Glindow
2022
Dinkel
Doris
Dessau
2008
20.005
BS
2
2
25.001
Braun
Beate
Berlin
2022
Dinkel
Doris
2008
20.107
DB
2
1
Gerber
Gert
Glindow
2022
Dinkel
Doris
2008
20.001
GI
2
1
Gerber
Gert
Glindow
1199
Stab
Steffen
Stahnsdorf
2007
20.107
DB
2
1
Gerber
Gert
Glindow
1199
Stab
Steffen
Stahnsdorf
2007
20.001
GI
2
1
Gerber
Gert
Glindow
mit: LV
MNr
Geb_Ort
IMJ
LVNr
=
=
=
=
=
Dessau
Dessau
Lehrveranstaltung
Matrikelnummer
Geburtsort
Immatrikulationsjahr
LV-Nummer
Bez
SWS
Sem
DNr
=
=
=
=
25.002
25.002
25.002
25.002
Bezeichnung
Semesterwochenstunden
Semester
Dozentennummer
Herunterladen