Kapitel 4: Entwurf der Relationsschemata

Werbung
4. Entwurf der Relationsschemata
4.
Kapitel 4: Entwurf der Relationsschemata
I
konzeptueller Entwurf: finde eine umfassende Strukturierung der gesamten
Informationsanforderungen der Miniwelt. Resultat: konzeptuelles Schema,
typischerweise ein ER-Schema, oder vergleichbares.
I
logischer Entwurf: bilde die Zusammenhänge des konzeptuellen Schemas in
Relationsschemata ab. Resultat: logisches Schema.
Das logische Schema ist Teil des zum Einsatz kommenden (relationalen)
Datenbanksystems.
I
physischer Entwurf: definiere die Abspeicherung der Relationen auf den
Speichermedien und lege Indexstrukturen zur Effizienzsteigerung der
Anwendungen fest.
Grundlagen von Datenbanksystemen, WS 2012/2013
3. Dezember 2012
Seite 1
4. Entwurf der Relationsschemata
4.
Mondial ER-Schema (M1)
Fläche
HStadt
Prozent
LName
Land
(1,2)
(0,*)
Lage
Kontinent
KName
Organisation
OName
LCode
(0,*)
(0,*)
Art
LaPro
Mitglied
(1,1)
(0,*)
PName
Provinz
LCode
Einwohner
LGrad
(0,*)
Fläche
BGrad
(1,1)
ProSta
Stadt
LCode
SName
Grundlagen von Datenbanksystemen, WS 2012/2013
PName
3. Dezember 2012
Seite 2
4. Entwurf der Relationsschemata
4.
Mondial ER-Schema alternativ (M2))
Fläche
HStadt
Prozent
LName
Land
(1,2)
(0,*)
Lage
LCode
(0,*)
Kontinent
KName
Organisation
OName
(0,*)
Art
LaPro
Mitglied
(1,1)
(0,*)
ProNr
Provinz
PName
Einwohner
LGrad
(0,*)
Fläche
ProSta
BGrad
(1,1)
StaNr
Grundlagen von Datenbanksystemen, WS 2012/2013
Stadt
SName
3. Dezember 2012
Seite 3
4. Entwurf der Relationsschemata
4.1. Transformation in Relationsschemata
4.1 Transformation in Relationsschemata
I
Wir ordnen zunächst jedem Entitätstyp und jedem Beziehungstyp ein
Relationsschema zu.
I
Fremdschlüsselbeziehungen unter den relationalen Schemata kennzeichnen wir
graphisch durch gerichtete Kanten (child −→ parent).
I
Unter Umständen können mehrere Relationsschemata wieder zu einem
Relationsschema zusammengefasst werden, um die Anzahl Schemata nicht
unnötig groß werden zu lassen:
I
I
Ist ein Beziehungstyp mit einem Entitätstyp über eine Kardinalität mit
max = 1 verbunden, dann kann das Relationsschema des Beziehungstyps in
das Schema des Entitätstyps integriert werden.
Ein so erhaltenes logisches Schema ist als Ausgangspunkt für eine weitere
Verfeinerung zu verstehen, in die dann menschliches, nicht im ER-Schema
dokumentiertes Wissen über die geplanten Anwendungen der Miniwelt eingehen
kann.
Grundlagen von Datenbanksystemen, WS 2012/2013
3. Dezember 2012
Seite 4
4. Entwurf der Relationsschemata
4.1. Transformation in Relationsschemata
Mondial relational
Land(LCode, HStadt, LName, Fläche),
Provinz(PName, LCode, Fläche),
Stadt(SName, LCode, PName, Einwohner, LGrad, BGrad),
Organisation(OName),
Mitglied(LCode, OName, Art),
Lage(LCode, KName, Prozent).
Grundlagen von Datenbanksystemen, WS 2012/2013
3. Dezember 2012
Seite 5
4. Entwurf der Relationsschemata
4.1. Transformation in Relationsschemata
Mondial relational als Graph
Grundlagen von Datenbanksystemen, WS 2012/2013
3. Dezember 2012
Seite 6
4. Entwurf der Relationsschemata
4.2. Relationsschemata in SQL
4.2 Relationsschemata in SQL
grundlegende Datentypen
SQL bietet eine Fülle von unterschiedlichen Datentypen an, mittels derer die
Wertebereiche der Spalten einer Tabelle festgelegt werden können.
I
INTEGER, SMALLINT
I
I
NUMERIC, DECIMAL. Angabe Anzahl Ziffern insgesamt und Anzahl
Kommastellen.
REAL, DOUBLE PRECISION, FLOAT
I
CHARACTER, CHARACTER VARYING, CHARACTER LARGE OBJECT
I
BIT, BIT VARYING, BINARY LARGE OBJECT
I
BOOLEAN
I
DATE, TIME, TIMESTAMP, INTERVALL, . . . .
Grundlagen von Datenbanksystemen, WS 2012/2013
3. Dezember 2012
Seite 7
4. Entwurf der Relationsschemata
4.2. Relationsschemata in SQL
Definition von Tabellen am Beispiel
CREATE TABLE Land (
LCode
CHAR(4),
LName
CHAR VARYING (50),
LName
CHAR VARYING (50),
Fläche
NUMBER,
PRIMARY KEY (LCode) )
CREATE TABLE Provinz (
PName
VARCHAR(35),
LCode
VARCHAR(4),
Fläche
NUMBER
PRIMARY KEY (PName, LCode),
FOREIGN KEY (LCode) REFERENCES Land (LCode) )
CREATE TABLE Stadt (
SName
VARCHAR(50),
PName
VARCHAR(50),
LCode
CHAR(4),
Einwohner
INTEGER,
LGrad
NUMBER,
BGrad
NUMBER,
PRIMARY KEY (SName,PName,LCode)
FOREIGN KEY (LCode) REFERENCES Land (LCode),
FOREIGN KEY (LCode, PName) REFERENCES Provinz (LCode, PName) )
Grundlagen von Datenbanksystemen, WS 2012/2013
3. Dezember 2012
Seite 8
Herunterladen