0

Ich bin ein bisschen neu zu ERM, SQL und Datenbanken in Echt, so könnte dies nur eine dumme Frage sein, aber hier gehe ich trotzdem.Kann eine Entität in einer 1-zu-1-Beziehung nur einen Fremdschlüssel als Primärschlüssel in einem ERM haben?

Ich machte einen ERM und das ist der Teil in Frage:

enter image description here

Namen ein Fremdschlüssel zu MainCharacter sein wird, aber ich will es auch der Primärschlüssel sein . Ist das überhaupt möglich oder sollte ich einen Ersatzschlüssel zu MainCharacter hinzufügen? Wenn möglich, gibt es eine Möglichkeit, dies im ERM zu zeigen?

Ich habe einige verwandte Fragen hier gefunden, aber konnte nicht wirklich die Antwort finden, die ich suchte. Jede Hilfe wäre willkommen :)

Antwort

1

Es ist sicherlich möglich und nicht ungewöhnlich, dass ein Fremdschlüssel auch ein Primärschlüssel ist. Dies geschieht häufig bei der Implementierung überlappender oder optionaler Subtypen.

Ihr Beispiel klingt wie ein Fall der optionalen Subtypisierung, aber Ihr Diagramm zeigt eine Beziehung zwischen unabhängigen Entitätsgruppen. Klassische ERD Notation spezifische Schreibweise nicht für Subtyping hat, aber wir können es als eine schwache Einheit in einer identifizierenden Beziehung gesetzt zeigen:

Subtype ERD

Das Doppel Rechteck zeigt eine schwache Entitätssatz (was bedeutet, es nicht hat seinen eigenen Schlüssel, wird aber durch seine Beziehung mit Character identifiziert), während die doppelte Assoziationslinie vollständige Partizipation anzeigt (ein MainCharacter kann nicht ohne eine Assoziation mit einem Charakter existieren). Der Doppeldiamant zeigt eine identifizierende Beziehung an. Diese Elemente werden immer in Kombination verwendet, obwohl die vollständige Teilnahme auch in regulären Beziehungen verwendet werden kann. Mit der richtigen Notation brauchen wir Kardinalitätsindikatoren in ERDs selten.

Erweiterte ER-Notationen zeigen die Subtypisierung mit verschiedenen Stilen an, wie einem Kreis und einem Bogen oder einem Dreieck. Ich bevorzuge die Kreis-und-Bogen-Notation, da sie verwendet werden kann, um zwischen überlappenden und disjunkten Subtypen zu unterscheiden, indem man ein o oder d in den Kreis schreibt, und der Bogen unterscheidet den Subtyp unabhängig von der Ausrichtung der Elemente vom Supertyp.

Subtype EERD

Verwandte Themen