Der relationale Verbund

Werbung
Datenbanksysteme
Inhaltsübersicht
• Beispiele / Motivation
• Informationssysteme
• Datenbank- und
Datenbankmanagementsysteme
• Relationale Datenbanken / Das relationale
Modell
Der relationale Verbund
 Der relationale Verbund (Join) verknüpft zwei
Relationen R und S:
𝑹 ⋈𝑺
Der relationale Verbund
 natürlicher Join (natural)
 linker äußerer Join (left outer)
 rechter äußerer Join (right outer)
 äußerer Join (outer)
Natürlicher Join (natural)
 Beispiel:
L
A
R
B
C
C
D
E
A1 B1 C1
C1 D1 E1
A2 B2 C2
C3 D2 E2
Ergebnis
A
B
C
D
E
A1
B1
C1 D1
E1
Linker äußerer Join (left outer)
 Beispiel:
L
A
R
B
C
C
D
E
A1 B1 C1
C1 D1 E1
A2 B2 C2
C3 D2 E2
Ergebnis
A
B
C
D
E
A1
B1
C1 D1
E1
A2
B2
C2
-
-
Rechter äußerer Join (right outer)
 Beispiel:
L
A
R
B
C
C
D
E
A1 B1 C1
C1 D1 E1
A2 B2 C2
C3 D2 E2
Ergebnis
A
B
C
D
E
A1
B1
C1 D1
E1
-
-
C3 D2
E2
Äußerer Join (outer)
 Beispiel:
L
A
R
B
C
C
D
E
A1 B1 C1
C1 D1 E1
A2 B2 C2
C3 D2 E2
Ergebnis
A
B
C
D
E
A1
B1
C1 D1
E1
A2
B2
C2
-
-
-
C3 D2
E2
Der relationale Verbund
 Andere Möglichkeiten:
 Semi-Join (Gleichverbund)
 Equi-Join
Schlüssel und Fremdschlüssel
Fremdschlüssel
Schlüssel
Fremdschlüssel
Ausleihe
AusleiheID
BuchNr
LeserNr
Datum
001
6457
234
20-05-2012
002
7754
765
23-11-2010
003
8780
890
08-09-2011
Schlüssel und Fremdschlüssel
Schlüssel
Bücher
BuchNr
Name
Verlag
6457
Datenbanksysteme
Eickler
7754
Java von Kopf bis Fuß
O‘Reilly
Schlüssel
Leser
LeserNr
Name
234
Ahmed
765
Hassan
Primärschlüssel
Der Primärschlüssel ist eine minimale Kombination von
Attributen, durch deren Werte jede Entität eindeutig
identifiziert wird. Die Werte dürfen sich während der Existenz
der Entität nicht ändern. Wir unterscheiden zwischen:
 einfacher Schlüssel: der Primärschlüssel besteht aus einem
Attribut
 zusammengesetzter Schlüssel: der Primärschlüssel besteht aus
mehreren Attributen, jedes Attribut bezeichnet man als
Teilschlüsselattribut.
Relationale Anfragesprachen
 Die Relationale Algebra und der
Relationenkalkül bilden die theoretische
Grundlage für die Anfragesprache SQL
 Anfragesprachen sind im allgemeinen
deklarativ
 SQL: Structured Query Language
Datentypen
BOOLEAN
Wahrheitswert
SMALLINT
INTEGER
BIGINT
ganze Zahl
DECIMAL(p,q)
NUMERIC(p,q)
Dezimalzahl (p-stellig, davon q Nachkommastellen)
REAL
DOUBLE PRECISION
FLOAT(p)
Gleitpunktzahl, einfache Genauigkeit
Gleitpunktzahl, doppelte Genauigkeit
Gleitpunktzahl, mind. p Stellen Genauigkeit
CHAR(q)
VARCHAR(q)
CLOB
NCLOB
Zeichenkette mit genau q Zeichen
Zeichenkette mit maximal q Zeichen
Character Large Object; lange Zeichenkette
National (zeichensatzspezifisches)
BLOB
BLOB Binary Large Object; binäre Zeichenkette
DATE
TIME
TIMESTAMP
INTERVAL
Datum
Zeit
Datum-Zeitstempel
Zeitintervall
Einfache SQL-Anfragen
Ausleihe
AusleihID
BuchNr
LeserNr
Datum
001
6457
234
20-05-2012
002
7754
765
23-11-2010
003
8780
890
08-09-2011
SELECT AusleihID, Datum
FROM Ausleihe;
Tabellenname
AusleihID
Datum
001
20-05-2012
002
23-11-2010
003
08-09-2011
Einfache SQL-Anfragen
Ausleihe
AusleihID
BuchNr
LeserNr
Datum
001
6457
234
20-05-2012
002
7754
765
23-11-2010
003
8780
890
08-09-2011
SELECT AusleihID, Datum
FROM Ausleihe
WHERE AusleihID = 002;
AusleihID
Datum
002
23-11-2010
Fragen?
Informatik AG
[email protected]
dayzine.de/forum
Herunterladen