• Keine Ergebnisse gefunden

Verkaeufer-Produkt

N/A
N/A
Protected

Academic year: 2021

Aktie "Verkaeufer-Produkt "

Copied!
20
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Relationenmodell

Ziel:

! geringe Redundanz,

! gute Handhabbarkeit,

! einfache Zugriffe über möglichst wenige Tabellen

! Sicherstellung von Konsistenz und Integrität.

(2)

Beispielrelation

Verkaeufer-Produkt

Verk.-Nr. Verk.-Name PLZ Verk.-Adresse Produktname Umsatz

V1 Meier 80075 München Waschmaschine 11000

V1 Meier 80075 München Herd 5000

V1 Meier 80075 München Kühlschrank 1000 V2 Schneider 70038 Stuttgart Herd 4000 V2 Schneider 70038 Stuttgart Kühlschrank 3000 V3 Müller 10183 Berlin Staubsauger 1000

(3)

Begriffe

Formale relationale Ausdrücke Informelle Ausdrucksweise

Relation Tabelle Tupel eine Zeile (Reihe) einer Tabelle Kardinalität Anzahl der Zeilen einer Tabelle Attribut eine Spalte (Feld) einer Tabelle Grad Anzahl der Spalten einer Tabelle

Primärschlüssel eindeutiger Bezeichner

Gebiet Menge aller möglichen Werte

(4)

Relationale Begriffe am Beispiel

LName Stadt PLZ

L1

L3 L4 L5 L2

Müller Schmidt Maier Schwarz Weiß

München Regensburg Hamburg Köln Berlin

81724 93055 20543 50087 11168 Relation

Gebiete

Tupel

K a r d i n a l i t ä t

Grad Attribute

Name Stadt

PLZ Nr

Primär- schlüssel

L#

(5)

Definition

Definition (Relation):

Eine Relation ist eine Tabelle obiger Gestalt, bestehend aus einem Kopf und einem Rumpf, mit folgenden vier Eigenschaften:

# Es gibt keine doppelten Tupel.

$ Tupel sind nicht geordnet (etwa von oben nach unten).

% Attribute sind nicht geordnet (etwa von links nach rechts).

& Alle Attribute sind atomar.

Eine solche Relation wird auch als normalisierte Relation bezeichnet.

(6)

Nicht atomare Relation Verkaeufer-Produkt

Verk.-Nr. Verk.-Name PLZ Verk.-Adresse Produktname Umsatz V1 Meier 80075 München Waschmaschine,

Herd, Kühlschrank

17000

V2 Schneider 70038 Stuttgart Herd, Kühlschrank

7000

V3 Müller 50083 Köln Staubsauger 1000

(7)

Definition

Definition (relationale Datenbank):

Eine relationale Datenbank ist eine Datenbank, die der Benutzer als eine Ansammlung von zeitlich variierenden, normalisierten Relationen passender Grade erkennt.

(8)

Relationen

' Basisrelationen

Real existierende Relationen, persistenter Bestandteil der Datenbank) ' Sichten (Views)

Virtuelle Relationen, abgeleitet aus Basisrelationen. Sie erscheinen dem Benutzer wie „normale“ Relationen.

' Abfrageergebnisse

Relationen, die temporär im Arbeitsspeicher zur der Ausgabe existieren.

' Temporäre Relationen

Relationen, die nur temporär existieren. Sie werden bei bestimmten Ereignissen zerstört, etwa beim Beenden einer Transaktion.

(9)

Erzeugen von Relationen

CREATE TABLE … ; (Erzeugen einer Basisrelation) CREATE VIEW … ; (Erzeugen einer Sicht)

SELECT … ; (Abfrage)

CREATE TEMPORARY TABLE … ; (Erzeugen einer temporären Relation)

(10)

Integrität

' Physische Integrität

Vollständigkeit der physischen Speicherstrukturen (verantwortlich: Daten- bank, Betriebssystem)

' Ablaufintegrität

Korrektheit der Programme, z.B. keine Endlosschleifen, Datenkonsistenz (verantwortlich: Anwendungsprogrammierer, Datenbankdesigner)

' Zugriffsberechtigung

Korrekte Zugriffsrechte (verantwortlich: Datenbank-Administrator) ' Semantische Integrität

Übereinstimmung der Daten aus der nachzubildenden realen Welt mit den abgespeicherten Informationen (verantwortlich: Datenbankdesigner, Anwendungsprogrammierer, Anwender)

(11)

Entitäts-Integritätsregel

1. Integritätsregel (Entitäts-Integritätsregel)

Keine Komponente des Primärschlüssels einer Basisrelation darf nichts enthalten.

Folgerungen:

! NULL-Werte im Primärschlüssel sind nicht erlaubt

! Alle Tupel sind immer eindeutig identifizierbar

! Tupel in einer Relation entsprechen immer einer Entität

! Neue Tupel müssen immer Primärschlüsselwerte enthalten

(12)

Relation mit zusammengesetztem Primärschlüssel

Produktname Produkttyp Bestand Preis

Staubsauger T06 25 498

Staubsauger T17 17 219

... ... ... ...

Herd T04 10 1598

Herd T06 7 1998

← Primärschlüssel →

(13)

Definitionen

Definition (Schlüsselkandidat):

Ein Attribut heißt Schlüsselkandidat, falls es

! eindeutig jedes Tupel identifiziert und

! minimal ist

Definition (Primärschlüssel, alternativer Schlüssel):

Bei mehreren Schlüsselkandidaten wird einer als Primärschlüssel ausgewählt; alle anderen heißen alternative Schlüssel.

(14)

Tabelle der chemischen Elemente

Protonen# Atomgewicht Name Symbol

1 1,0079 Wasserstoff H

2 4,0026 Helium He

3 6,941 Lithium Li

. . . . . . . . . . . .

(15)

Relationale Integritätsregel

Definition (Fremdschlüssel)

Ein Attribut einer Basisrelation heißt Fremdschlüssel, falls

! das ganze Attribut nichts oder einen definierten Inhalt enthält,

! eine Basisrelation existiert, so dass jeder definierte Wert des Fremdschlüssels einem Wert des Primärschlüssels jener Basisrelation entspricht.

2. Integritätsregel (Referenz-Integritätsregel)

Eine relationale Datenbank enthält keinen Fremdschlüsselwert (un- gleich NULL), der im dazugehörigen Primärschlüssel nicht existiert.

(16)

Relation Personal (Auszug aus RADL-Datenbank)

Persnr Name Ort Vorgesetzt Gehalt

1 Maria Forster Regensburg NULL 6800.00 2 Anna Kraus Regensburg 1 3400.00 3 Ursula Rank Straubing 6 4200.00 4 Heinz Rolle Nürnberg 1 4600.00 5 Johanna Köster Nürnberg 1 3200.00 6 Marianne Lambert Landshut NULL 5500.00 7 Thomas Noster Regensburg 6 3800.00 8 Renate Wolters Kelheim 1 4700.00

9 Ernst Pach Passau 6 800.00

Relation Auftrag

AuftrNr Datum Kundnr Persnr

1 04.08.1998 1 2

2 06.09.1998 3 5

3 07.10.1998 4 2

4 18.10.1998 6 5

5 06.11.1998 1 2

ON DELETE ? ON UPDATE ?

(17)

Anwenden der relationalen Integritätsregel

Zurückweisen des Löschens / Änderns:

ON DELETE NO ACTION ON UPDATE NO ACTION

Löschen / Ändern aller darauf verweisender Tupel:

ON DELETE CASCADE ON UPDATE CASCADE

Nullsetzen aller darauf verweisender Fremdschlüssel:

ON DELETE SET NULL ON UPDATE SET NULL

(18)

Kaskadierendes Löschen (Beispiel)

Gegeben:

! Datenbank mit Relationen Personal und Auftrag

! Alle Fremdschlüssel mit ON DELETE CASCADE

Beispiel 1:

Frau Kraus verlässt die Firma Folgerung: 4 Tupel werden gelöscht

Beispiel 2:

Frau Forster verlässt die Firma Folgerung: 10 Tupel werden gelöscht!

(19)

Wichtige Fragen zu Fremdschlüsseln

Fragen:

1. Darf ein Fremdschlüssel NULL-Werte enthalten?

2. Wie reagiert ein Fremdschlüssel auf das Löschen eines Verweises?

3. Wie reagiert ein Fremdschlüssel auf das Ändern eines Verweises?

Antwort:

1. Hängt von den realen Vorgaben ab 2. Hängt von den realen Vorgaben ab

3. Praktisch immer: ON UPDATE CASCADE

(20)

Die acht Mengenoperatoren

b1 b1 b2 (natürliche) Verbindung Produkt

Projektion Restriktion

Differenz Schnitt

Division Vereinigung

a b c

a a b b c c x

y

x y x y x y

a1 a2 a3

b1 b1 b2

b1 b2 b3

c1 c2 c3

a1 a2 a3

a a a b c

x y z x y

a x

y c1

c1 c2

Abbildung

Tabelle der chemischen Elemente

Referenzen

ÄHNLICHE DOKUMENTE

a) gegenüber einem nachrangigen geschiedenen Ehegatten b) gegenüber nicht privilegierten volljährigen Kindern c) gegenüber Eltern des Unterhaltspflichtigen.. 2.

Abschläge für Stickstoffnachlieferung aus der Stickstoffbindung von Leguminosen bei Grünland und mehrschnittigem Feldfutter. Quelle: Anlage 4 Tabelle 12

Für Gemüsekulturen sowie Dill, Petersilie und Schnittlauch mit einer Folgekultur der Tabelle 11 im gleichen Jahr gelten die Werte nach Tabelle

Die Codes 128-255 wer- den je nach Zeichensatz unterschiedlich belegt (mit Sonderzeichen wie z.B. Umlauten) und sind hier nicht dargestellt. Birnthaler,

” Absdik“) ¨ von IBM f ¨ur HOST-Rechner definiert eine Standardbelegung der Codes 0-255 mit Zeichen (keine landesspezifischen Sonderzeichen wie z.B. Birnthaler,

• Hat eine SZK keine eingehenden Kanten, erhält man ihren Wert, indem man die kleinste obere Schranke aller Werte in der SZK berechnet :-). • Gibt es eingehende Kanten, muss

Vorteile Druckverhältnisse für jeden Heizkörper gleich groß Heizflächenbedarf ist unabhängig von der Rohrführung Die Heizkörper beeinflussen sich gegenseitig nur wenig

Bedingungen für die Teilnahme an der Klausur: 50% der Punkte aus den Übungsserien und zweima- liges Vorrechnen an