Zum Inhalt springen
L

Wikipedia · einfach zusammengefasst · Stand

Schwache Entität

In einer relationalen Datenbank handelt es sich bei schwachen Entitäten um Entitäten, welche nicht alleine durch deren Attribute identifiziert werden können …

Inhalt4 Abschnitte
  1. 1. Definition und Bedeutung
  2. 2. Darstellung und Arten
  3. 3. Typische Strukturen und Beispiele
  4. 4. Beispiel Bestelldatenbank

Definition und Bedeutung

Eine schwache Entität ist in einer relationalen Datenbank eine Entität, die nicht allein durch ihre eigenen Attribute eindeutig identifiziert werden kann. Sie benötigt einen Fremdschlüssel, üblicherweise den Primärschlüssel einer übergeordneten starken Entität. Zusammen mit den übrigen Attributen bildet dieser Fremdschlüssel einen zusammengesetzten Primärschlüssel. Die schwache Entität ist von der starken Entität abhängig und kann ohne sie nicht existieren.

Der Primärschlüssel einer schwachen Entität enthält häufig – jedoch nicht zwingend – nur den übernommenen Primärschlüssel der starken Entität und eine fortlaufende Nummer.

Darstellung und Arten

In der Chen-Notation werden schwache Entitäten durch fett gedruckte oder umrandete Rechtecke dargestellt. Eine entsprechend hervorgehobene Linie führt zu einem Diamanten, der die Beziehung beschreibt und mit der übergeordneten starken Entität verbunden ist. Diese Beziehung heißt identifizierende Beziehung. Dabei wird der Primärschlüssel der starken Entität an die schwache Entität weitergegeben und für deren zusammengesetzten Primärschlüssel verwendet. In der IDEF1X-Notation wird eine identifizierende Beziehung durch eine ovale statt einer rechteckigen Entität angezeigt.

Es gibt zwei Arten schwacher Entitäten:

  • Assoziative Entitäten lösen N:M-Beziehungen in relationalen Datenbanken auf und enthalten ausschließlich die Fremdschlüssel der beteiligten Entitäten.
  • Untertyp-Entitäten übernehmen Attribute von übergeordneten starken Entitäten und sind ein wichtiger Bestandteil der Datenbanknormalisierung.

Bei Untertyp-Beziehungen unterscheidet IDEF1X zwischen vollständigen Untertyp-Beziehungen, wenn alle Kategorien bekannt sind, und unvollständigen Untertyp-Beziehungen, wenn möglicherweise nicht alle Kategorien bekannt sind. Die übergeordnete starke Entität wird als Basistabelle umgesetzt; die abgeleiteten untergeordneten Entitäten entsprechen schwachen Entitäten. Kaskadierende Updates und kaskadierendes Löschen sichern dabei die referenzielle Integrität.

Typische Strukturen und Beispiele

Eine schwache Entität ohne Untertyp-Beziehung ist eine Header-Detail-Struktur, etwa bei Bestellungen oder Rechnungen. Der Header enthält gemeinsame Informationen, während die Detailzeilen Angaben zu den einzelnen Artikeln enthalten.

Ein Standardbeispiel für eine vollständige Untertyp-Beziehung ist eine Entität für Parteien. Der Diskriminator PARTY TYPE unterscheidet unter anderem Individuen, Partnerschaften, Unternehmen und behördliche Elemente. Daraus werden die Untertypen PERSON und ORGANIZATION abgeleitet. PERSON enthält beispielsweise Vorname, Nachname und Geburtstag; ORGANIZATION enthält unter anderem den vollständigen legalen Namen und organisatorische Hierarchien.

Beispiel Bestelldatenbank

In einer Bestelldatenbank werden Kunden durch eine eindeutige Kundennummer und Produkte durch eine Produktnummer identifiziert. Eine Tabelle für Bestellungen besitzt eine eindeutige Bestellnummer als Primärschlüssel und speichert zusätzlich die Kundennummer als Fremdschlüssel sowie Datum, Uhrzeit, Lieferort und Zahlungsmethode.

Eine weitere Tabelle enthält die bestellten Artikel. Jeder Datensatz wird durch einen zusammengesetzten Schlüssel aus Bestellnummer als Fremdschlüssel und Positionsnummer identifiziert. Weitere Attribute sind die Produktnummer, die Anzahl, der Preis, Rabatte und spezielle Optionen. Zu einer Bestellung können keine, eine oder mehrere bestellte Artikel gehören. Ein bestellter Artikel kann jedoch nicht ohne eine zugehörige Bestellung existieren und ist deshalb eine schwache Entität. Dasselbe Beispiel lässt auch die Einordnung der Bestellung als schwache Entität zu, wenn man davon ausgeht, dass eine Bestellung ohne Artikel und bestellende Person nicht existieren kann. Dann könnten die Artikelattribute direkt in der Bestellungs-Tabelle gespeichert werden.

Lernvideos zu Schwache Entität

Weiterlesen