Ergänzung Flashcards
(31 cards)
Funktionale Abhängigkeit
Gleichzusetzen mit superschlüssel? Eine funktionale Abhängigkeit innerhalb einer Relation Rzwischen den Attributmengen X und Y besteht genau dann, wenn für beliebige Tupel von R der Attributwert von X den Attributwert von Y festlegt. X wird die Determinante von Y genannt
Vollfunktionale Abhängigkeit
Gleichzusetzen mit Kandidatenschlüsel. Y heißt voll funktional abhängig von X, wenn aus der Attributmenge X kein Attribut entfernt werden kann ohne die funktionale Abhängigkeit zu zerstören. Schreibweise X–>Y
Schlüssel
Ein Schlüssel ist ein Attribut oder eine Attributkombination, mit dem eine Entität eines Entitätstyps eindeutig identifiziert werden kann.
Superschlüssel
EIn superschlüel ist eine Menge von einem oder mehreren Attributen, die ein Tupel in einer Relation garantiert eindeutig identifizieren.
Kandidatenschlüssel
Ein schlüsselkandidat ist ein minimaler Superschlüssel
Primärschlüssel
Genau ein Schlüsselkandidat wird als Primärschlüssel festgelegt
Fremdschlüssel
Ein Fremdschlüssel ist eine Menge von Attributen in einer Referenzierenden Relation, deren Werte garantiert als Primärschlüssel in der referenzierten Relation vorkommen. Fremschlüssel sind in der referenzierenden Relation nicht eindeutig.
6 Inverenzregeln
Reflexivität, Aufmentation, Transitivität, Zerlegungs, Vereinigungs, Pseudotransitivität
O/R Mapper
Bildet die zwischenschicht zwischen Anwendung und Datenbank. Erledigt das Mapping von Objekten auf Relationen. Transparent für den Anwendungsentwickler.
Attribut
Attribute sind die (Spalten) der Relation
Domäne
Definiert den Wertebereich von Attributen
Relation und Tupel
Eine Relation des Schemas R ist eine Menge von Tupeln. Jedes Tupel ist eine geordnete Liste von Werten
Reflexivitätsregel
Y ⊆ X ⟹ X → Y
Augmentationsregel
X → Y ⟹ XZ → Y Z
Transitivitätsregel
X → Y ∧ Y → Z ⟹ X → Z
Zerlegungsregel
X → Y Z ⟹ X → Y
Vereinigungsregel
X → Y ∧ X → Z ⟹ X → Y Z
Pseudotransitivität
X → Y ∧ W Y → Z ⟹ W X → Z
DBMS vs. Filesystem
Dateisystembasierte Datenspeicherung gewährt keine logische und physische Datenunabhängigkeit
Konkurrierende Zugriffe im Dateisystem quasi nicht möglich
Integritätsbedingungen müssen durch den Entwickler implementiert werden
Unzureichende Zugriffskontrollen
DB vs. DBMS
Eine Datenbank ist eine physische Sammlung von Daten, die einen Ausschnitt der realenWelt beschreiben.
Unter Daten verstehen wir bekannte Tatsachen, die aufgezeichnet werden können und eine implizite
Bedeutung haben. Ein Datenbankmanagementsystem ist ein Softwaresystem, welches dem Benutzer das
Erstellen und die Pflege einer Datenbank ermöglicht.
ANSI/SPARC-Modell
Eine Datendatei kann z. B. als XML-Datei oder in einem Binärformat auf der Festplatte abgelegt werden,
das DBMS muss das Format kennen (internes Schema) und danach auf der konzeptuellen Ebene
Relationen zur Verfügung stellen. Auf den Relationen können dann Views gebildet werden, die z. B. nur
einen Teilausschnitt aus den Daten beinhalten oder Aggregatfunktionen berechnen.
Erläutern Sie (formal) die Bestandteile einer Relation r und begründen Sie,
- warum unter den Tupeln t1 . . . tm 2 r keine Reihenfolge existiert
- warum die Werte v1 . . . vn eines Tupels tj eine geordnete Liste sind
Formal ist eine Relation R eine Teilmenge des kartesischen Produktes von Mengen (und somit wiederum
eine Menge). Eine Domäne D ist eine Menge atomarer, d.h. nicht weiter teilbarer Werte. Ein Attribut Ai
ist die Rollenbezeichnung einer Domäne D innerhalb einer Relation. Die Domäne eines Attributs A wird
geschrieben als dom(Ai). Ein Relationenschema R(A1,A2, . . . ,An) besteht aus dem Relationsnamen R
und den Attributen A1,A2, . . . ,An. Eine Relation r des Schemas R(A1,A2, . . . ,An), auch geschrieben
als r(R), ist eine Menge von n-Tupeln r = {t1, t2, . . . , tm}. Jedes n-Tupel tj ist eine geordnete Liste
von Werten tj = (v1, v2, . . . , vn), wobei gilt: 8vi 2 tj : vi 2 dom(Ai) Da in einer Menge keine Ordnung
besteht, kann daher auch in den Tupeln einer Relation keine Ordnung vorausgesetzt werden. Ein einzelnes
Tupel entstammt jedoch dem kartesischen Produkt der entsprechenden Domänen und ist daher eine
geordnete Liste.
Erläutern Sie,
- warum die Operationen [, \ und − Schemagleichheit der beteiligten Relationen erfordern
- warum die Operation × paarweise Disjunktheit der Attributnamen der beteiligten Relationen fordert
- warum die Operation notwendig ist
- aus welchen Basisoperationen die abgeleitete Operation on hergeleitet werden kann
Ein Superschlüssel ist eine Menge von einem oder mehreren Attributen, von denen alle anderen Attribute
funktional abhängig sind. Ein Superschlüssel garantiert damit die eindeutige Identifizierbarkeit des Tupels.
Ein Schlüsselkandidat ist ein minimaler Superschlüssel, d. h. die Attributmenge, von der alle andern Attribute
der Relation funktional abhängen, kann nicht weiter verkleinert werden. Genau ein Schlüsselkandidat
wird als Primärschlüssel festgelegt.
Beispiel: Artikel(EAN, LfdNr, Regalnr, Regalfachnr, Name, Stückzahl)
Superschlüssel
– EAN, LfdNr, Regalnr, Regalfachnr, Name
– EAN, LfdNr, Regalnr, Regalfachnr
– Regalnr, Regalfachnr
– EAN
– …
Kandidatenschlüssel
– EAN
– LfdNr
– Regalnr, Regalfachnr
Gewählter Primärschlüssel
– EAN
Erläutern Sie
- die Unterschiede zwischen einem Theta-Join, einem Equi-Join sowie einem Natural Join
- das Ergebnis eines natürlichen Verbundes zweier Relationen, deren Attributlisten paarweise disjunkt
sind - einen full outer join anhand eines selbst erstellten Beispiels
DHBW
- Der Theta-Join ist die allgemeine Form des Joins mit der Möglichkeit, die Verbundattribute sowie
den Vergleichsoperator explizit zu setzen. Der Equijoin ist ein Theta-Join, der auf Gleichheit der
Verbundattribute prüft. Der Natural Join ist ein Equijoin, der auf den gleichnamigen Attributen der
beteiligten Relationen arbeitet. - Das Resultat ist ein Kreuzprodukt.
- Full Outer Join mit den beteiligten Relationen:
Person(PNR, Vorname, Nachname)
Mitarbeiter(PNR, Login, Password)
PNR Vorname Nachname Login Password
4711 Hans Mustermann null null
4712 null null emfr abcd
4713 Otto Schmidt oschm qwertz
Person Nr. 4711 ist kein Mitarbeiter, für Mitarbeiter 4712 existiert kein Eintrag in Person, 4713 ist
Person und Mitarbeiter.