5.3. Entities und Relationships - Entity-Relationship-Modelling history menue Letztmalig dran rumgefummelt: 14.02.16 12:41:35

Entiies - die Objekte und Relationships - die Art ihrer Beziehung

1. Entities
2. Relationships
3. Entitty-Relationship-Modelling zum Selbermachen

Datenbanken

Logo für die Entities und Relationships

inhaltlich auf korrektem Stand - evtl. partiell unvollständig ;-)

Wissen für Fortgeschrittene der Informatik

Quellen:
beide Begriffe stehen in engem Zusammenhang und werden durch das Schlüsselkonzept vermittelt - was nix anderes bedeutet: "... ich weiß, was Schlüssel sind, ich kenne Relationsships und mir ist bekannt, was 'n Entity-Type darstellt
Entity-Typen beschreiben Objekte und werden folgerichtig auch als Substantiv ausgewiesen - achten Sie schon beim Entwurf auf dBASE-Kompatibilität (maximal zehn Zeichen für die Merkmale und möglichst nur acht für die Entieties selbst (Dateiverwaltungssystem unter MS_DOS)
bezeichnen Sie Entity-Typen immer in der Einzahl - auch wenn die Mehrzahl noch so richtig erscheint - aus Sicht der Objektbeschreibung geht es immer um das "eine Objekt" (also nicht "PROJEKTE" sondern "PROJEKT"
Relationships - also die vermittelnden Beziehungen sind immer Verben, maximal Adverben und können Prädikateigenschaft besitzen - "hat", "ist", "besitzt" oder die Tätigkeit eines Berufes sind gute Muster (wir machen ja keinen schönen Deutsch!)
vollständige Entity-Relationships beschreiben einen, wenn auch nicht immer schönen, Satz - seien Sie mit's die Grammatik großzügig und bilden sie richtige ERM's ;-)

1. Entities und Entitytypen history menue scroll up

Entiies - die einzelnen Objekte und Entity-Types - die Gesamtmenge all der Objekte, welche sich durch gemeinsame Merkmale beschreiben lassen

  • Ein Entitytyp ist eine Zusammenfassung von relevanten Objektenkriterien mit gemeinsamen Merkmalen Attributen), welche sich jedoch in mindestens einem Kriterium voneinander unterscheiden.
  • Entities sind die in der mindestens zweiten Normalform stehenden in einem Relationship vereinten Tabellen eines Diskurses - ist'n toller Satz - stimmt aber - und sagt weiter nichts, als dass mehrere Tabellen mit dem Ziel geschaffen wurden, Redundanzen auf ein Minimum zu reduzieren ;-)

Entity-Type-Modell

  • der Datensatz wird als Tupel, Objekt oder Entity bezeichnet
  • Dateneinträge sind Merkmalswerte (Attributwerte)
  • Feldnamen werden als Attribute bezeichnet
  • Alle erfassten Entities ergeben in Summe einen Entitytyp
  • die Gesamtheit der Datenbasis wird unter dem Begriff Diskurs verwaltet

K_NAME

FLAECHE

Afrika

48

Amerika

39,34

Asien

30

Australien

13,2

Europa

10,5

Tabelle oder Entitytyp KONTINENT mit den Bezeichnungen des Tabellenaufbaus

  • Eine Entität ist eine Zusammenfassung von relevanten Objektenkriterien mit gemeinsamen Merkmalen, welche sich jedoch in mindestens einem Kriterium voneinander unterscheiden - beschreibt genau eine Objektgruppe
    • ist redundanzfrei
    • ist konsistent widerspruchsfrei - ein LKW kann nicht zur gleichen Zeit auf zwei Straßen unterwegs sein!!!)
    • ist aktuell
    • ist d-Base-kompatibel
    • ist in sich geschlossen - das betrifft die Tupel  (alle Datensätze, die für die Betrachtung relevant sind, sind erfasst)
    • kann unvollständig in der Zahl der Attribute sein (Attribute bildet man evtl. aus Zugriffsrechten in verschiedenen Entities ab)
  • jede Tabelle besitzt einen eindeutigen Tabellennamen (zehn Zeichen lang, keine Umlaute, mit Großbuchstaben zu notieren)
  • innerhalb der Tabelle ist jeder Merkmalsname eindeutig und bezeichnet eine bestimmte Spalte mit der gewünschten Eigenschaft
  • die Anzahl der Merkmale ist beliebig, die Ordnung der Spalten innerhalb der Tabelle bedeutungslos
  • eines der Merkmale oder eine Merkmalskombination identifiziert eindeutig die Tupel innerhalb der Tabelle und wird als Primärschlüssel bezeichnet (jedes Entity sollte einen Primary Key besitzen!!!)
  • die Attributwerte zur Objektbeschreibung sind einheitlich (Domain), das heißt nichts anderes, las: gleiche Merkmale werden durch gleiche Werte beschrieben
  • die Anzahl der Tupel einer Tabelle ist beliebig, die Ordnung der Tupel innerhalb der Tabelle bedeutungslos
  • Netzwerkrechte sind auf das komplette Entity gesetzt (entweder ich sehe alles oder gar nichts)
  • ein Objekt - ein Tupel beschrieben durch seine Attribute: ein key_attribut - viele no_key_attributs
  • gleiche Bezeichner in verschiedenen Entity-Types sind möglich - im Falle eines Relationships sogar notwendig
  • setze das KEY-Attribut an erste Stelle - das entsräche der Erwartung

Schreibweisen für einen Entity

grafisch zur Darstellung der Entity-Relationships

Grafische Darstellung einer Entität (Key-Attribut unterstrichen)

schriftlich zur Formulierung der Entität ohne Bezüge

ENTITÄTSNAME (KEY_ATTRIBUT, ATTRIBUT_1, ..., ATTRIBUT_n)

Notation einer Entität (Key-Attribut als erstes und unterstrichen)


2. Relationships history menue scroll up

Relationships - die Vermittlung zwischen den Objekten (Entity-Types) - wobei die Abhängigkeit der Objekte untereinander minimal sein sollte. Es muss in jedem Fall ein eindeutiger Schluss von einem Entity der einen Objektmenge (Entity-Type) zu mindestens einem Entity (Objekt) der anderen Menge möglich sein. Einen Spezialfall stellen dann die 0 : X-Beziehungen (Left-Outer-Join bzw. Right Outer-Join dar).

  • beschreibt die Übergänge von einen Entity zum anderen
  • jeder Bezeichner für ein Relationship sollte einmalig sein - muss dies, wenn es sich um m : n-Beziehungen handelt, da diese zu eigenständigen Entity-Types umgewandelt werden
  • es wird angegeben, wie und wie vielfach sind Entitytypen aneinander gebunden
  • die Vermittlung der Entity-Typen wird durch die Schlüssel der jeweils beteiligten  Typen vorgenommen
  • mindestens einer der beiden Keys muss dabei ein Primary-Key sein
  • das möglichst gleichlautende Attribut im anderen Entity-Type wird damit automatisch zum Forign-Key

Allgemeines Entity-Relationship-Modell

Allgemeines Entity-Relationship-Modell + Kardnalitäten + Attribute

erste Möglichkeit zur Darstellung eines ERM (oder auch ERD genannt)

erste Möglichkeit zur Darstellung eines ERM (oder auch ERD genannt)

zweite Möglichkeit zur Darstellung eines ERM (oder auch ERD genannt)

zweite Möglichkeit zur Darstellung eines ERM (oder auch ERD genannt)

an Relationships werden keine Daten angefügt - einige Ausnahme: die Auflösung von m : n-Beziehungen durch zwei 1 : n-Beziehungen und dann sind die einzigen zulässigen Daten die beiden Primärschlüssel der zueinander in Beziehung zu bringenden Entity-Types
Die drei Grundmodelle der Relationships

zum Anschauen

CorelDrwa-Dateien zum Mitmachen ;-)

Allgemeine Darstellung einer 1 : 1-Beziehung

Allgemeine Darstellung einer 1 : 1-Beziehung im CDR 11-Format

Allgemeine Darstellung einer 1 : n-Beziehung

Allgemeine Darstellung einer 1 : n-Beziehung im CDR-11-Format

Allgemeine Darstellung einer m : n-Beziehung

Allgemeine Darstellung einer m : n-Beziehung

Beispiele für eine kleine Auswahl von Relationsships

 


3. Entitiy-Relationship-Modelling history menue scroll up

Relationships - die Vermittlung zwischen den Objekten (Entity-Types) - wobei die Abhängigkeit der Objekte untereinander minimal sein sollte. Es muss in jedem Fall ein eindeutiger Schluss von einem Entity der einen Objektmenge (Entity-Type) zu mindestens einem Entity (Objekt) der anderen Menge möglich sein. Einen Spezialfall stellen dann die 0 : X-Beziehungen (Left-Outer-Join bzw. Right Outer-Join dar).

Relationhip I - AUTOHANDEL

Relationship II - AG

Relationship III - FLUG

Relationhip IV - VOLKSHOCHSCHULE

   

 

   
 
 
Relationhip V
Relationhip VI
 

 



zur Hauptseite
© Samuel-von-Pufendorf-Gymnasium Flöha © Frank Rost im Dezember 2002

... dieser Text wurde nach den Regeln irgendeiner Rechtschreibreform verfasst - ich hab' irgendwann einmal beschlossen, an diesem Zirkus nicht mehr teilzunehmen ;-)

„Dieses Land braucht eine Steuerreform, dieses Land braucht eine Rentenreform - wir schreiben Schiffahrt mit drei „f“!“

Diddi Hallervorden, dt. Komiker und Kabarettist

Diese Seite wurde ohne Zusatz irgendwelcher Konversationsstoffe erstellt ;-)