Beim Entwurf kann man drei Abstraktionsebenen unterscheiden:
- Konzeptuelle Ebene - Entity-Relationshio-Modell
- Implementationsebene - Relation, Tupel, Attribute
- Physische Ebene - Performance-Erhöhung mittels Indices. etc
- Identifikation von Organisationseinheiten
- Identifikation der hzu unterstützenden Aufgaben
- Anforderungs-Sammelplan
- Anforderungs-Sammlung
- Filterung
- Satzklassifikationen
- Formalisierung
-
Attribut PersonalNummer
- Typ: char
- Länge: 9
- Anzahl Wiederholungen: 0
- Definiertheit (Wk für Belegung): 100%
- Identifizierend: ja
-
Attribut Gehalt
- Typ: dezimal
- Länge: 8, 2 Nachkommastellen
- Anzahl Wiederholungen: 0
- Definiertheit: 100%
- Identifizierend: nein
- Beteiligte Objekte:
- Professor als Prüfer
- Student als Prüfling
- Vorlesung als Prüfungsstoff
- Attribute der Beziehung
- Datum
- Uhrzeit
- Note
- Anzahl: 50.000 pro Jahr
- Häufigkeit: halbjährlich
- benötigte Daten
- Prüfungen
- Studienordnungen
- Studenteninformation
- ...
- Priorität: hoch
- zu verarbeitende Datenmenge
- 500 Studenten
- 3000 Prüfungen
- 10 Studienverordnungen
Als Entitäten werden wohlunterscheidbare (identifizierbare) physisch oder gedanklich existierende Konzepte der zu modellierenden Welt bezeichnet.
Entitäten unterscheiden sich von einander durch ihre Eigenschaften (Attribute( bzw. Eigenschaftswerte.
bestimmte Personen, Firmen, Raumschiffe, etc.
Gleichartige Entitäten (Entitäten mit gleichen Eigenschaften, aber unterschiedlichen Eigenschaftswerten) werden zu Entitäts-Typen zusammengefasst (kategorisiert).
Dabei sind nicht die Werte der Attribute, sondern deren Anzahl und Art der Eigenschaften für die Zusammenfassung entscheidend.
Bei der Modellierung werden nicht einzelne Entitäten, sondern der Entitäts-Typ, betrachtet. Graphische Darstellung erfolgt durch ein Rechteck.
Attribute bzw. Eigenschaften charakterisieren eine Entität, einen Entity-Typ, eine Beziehung bzw. einen Beziehungstyp.
Graphische Darstellung erfolgt durch eine Ellipse.
Attribute besitzen:
- einen Namen
- einen Wert
Eine Domäne beschreibt den zulässigen Wertebereich einer Eigenschaft
- fest vorgegebene Werte: Montag, Dienstag, ...
- Bereiche wie: 0,1,2 bis 10000; oder A-Z
- Datentypangaben wie: reele Zahl, ganze Zahl, etc.
Beziehungen drücken die Wechselwirkung oder Abhängigkeit von Entitäten aus.
Beziehungen können, genau wie Entitäten, Eigenschaften (Attribute) besitzen.
Der Beziehungs-Typ ist die Abstraktion gleichartiger Beziehungen. Das Verhältnis zwischen Beziehungstyp und Beziehun ist analog zum Verhältnis Entitätstyp zu Entität.
Graphische Darstellung erfolgt durch eine Raute.
Eine minimale Menge von Attributen, die eine Entität eindeutig identifiziert, wird als Schlüssel bezeichnet.
Eine Entität wird durch die Kombination aller seiner Attributwerte eindeutig beschrieben, sonst wäre sie nicht unterscheidbar. Im Allgemeinen reicht jedeoch eine Teilmenge der Attribute aus, um eine Entität eindeutig zu beschreiben.
Sind mehrere Schlüssel(-kandidaten) vorhanden, wählt man einen dieser Kandidaten als Primärschlüssel aus.
Manchmal sind "natürliche" Attribute ungeeignet, dann wird ein künstliches Attribut als Primärschlüssel hinzugefügt (Id).
Primärschlüssel werden durch Unterstreichen der Attribute im ER-Diagramm gekennzeichnet.
Die Mengenlehre bildet die mathematische Grundlage der Theorie relationaler Datenbanken. Daher werden im Folgenden einige wesentliche Konzepte der Mengenlehre wiederholt.
Unter einer Menge verstehen wir jede Zusammenfassung
$M$ von bestimmten, wohlunterschiedenen Objekten$e$ unserer Anschauung oder unseres Denkens (welche die Elemente von$M$ genannt werden) zu einem Ganzen.
Als Darstellung einer Menge kann man die Elemente
Dabei gilt:
- Reihenfolge der Elemente
$ei$ spielt keine Rolle - Mehrfach aufgezählte Elemente gelten nur einmal
Das kartesische Produkt zwischen zwei Mengen
Durch das kartesische Produkt zwischen
Im Allgemeinen:
Die Elemente des Produktes von
-
$n=2$ : Paare -
$n=3$ : Tripel -
$n=4$ : Quadrupel
Jede Teilmenge eines Produktest
$A_{1} \times A_{2} \times ... \times A_{n}$ heißt Relation über$A_{1} ... A_{n}$
Relationen können ebenso als Tabellen dargestellt werden.
D | 2 | m |
C | 5 | M |
B | 8 | W |
B | 4 | m |
Gegeben seien zwei Mengen
Eine partielle Funktion ist eine rechtseindeutige Relation
$R \subseteq E_{1} \times E_{2}$Jedes Element aus
$E_{1}$ kann mit maximal einem Element aus$E_{2}$ in Beziehung stehen. Außerdem skann jedes Element aus$E_{2}$ mit maximal einem Element aus$E_{1}$ in Beziehung stehen.
- verheiratet mit (zu einem Zeitpunkt - nach deutschem Recht)
Es gilt:
$R: E_{1} \to {p} E{2}$ und $R: E_{2} \to {p} E{1}$
Jedes Element aus
$E_{1}$ kann mit beliebig vielen Elementen aus$E_{2}$ in Beziehung stehen und jedes Element aus$E_{2}$ kann mit maximal einem Element aus$E_{1}$ in Beziehung stehen.
- beschäftigen: (Firmen beschäftigen Personen)
Es gilt:
$R: E_{2} \to {p} E{1}$
Jedes Element aus
$E_{2}$ kann mit beliebig vielen Elementen aus$E_{1}$ in Beziehung stehen und jedes Element aus$E_{1}$ kann mit maximal einem Element aus$E_{2}$ in Beziehung stehen.
- arbeitet bei: (Personen abreiten in Firma)
Es gilt:
$R: E_{1} \to {p} E{2}$
Jedes Element aus
$E_{1}$ kann mit beliebig vielen Elementen aus$E_{2}$ in Beziehung stehen und jedes Element aus$E_{2}$ kann mit beliebig vielen Elementen aus$E_{1}$ in Beziehung stehen. => Keine Einschränkungen
- belegen: (Studenten belegen Module)
Kann nicht als partielle Funktion ausgedrückt werden.
Es gilt:
$R: E_{2} \to {p} E{1}$
Funktionalitäten stellen Integritätsbedingungen dar, d.h. diese Bedingungen gelten in der zu modellierten Welt als Gesetzmäßigkeiten.
Sie gelten nicht rein zufällig für einen Datenbestand.