/ Kardinalität und Fremdschlüsselbeziehung - MySQL, Datenbankdesign, relationale Datenbank, Datenbankschema, Entitätsbeziehung

Kardinalität und Fremdschlüsselbeziehung - MySQL, Datenbankdesign, relationale Datenbank, Datenbankschema, Entitätsbeziehung

Ich bin neu im Datenbankdesign und versuche esdie bewährte Vorgehensweise für die Verwendung von Fremdschlüsseln verstehen. Ich weiß, dass, wenn Sie eine 1: m-Beziehung haben, wir keine Beziehung für die Beziehung erstellen müssen, sondern stattdessen einen Fremdschlüssel zur m-Seite der Beziehung hinzufügen können (der dem Primärschlüssel auf der 1 entspricht -side), um die referentielle Integrität zu erhalten Meine Frage ist jedoch: Unter welchen anderen Umständen könnten wir das Gleiche tun? Können wir das Gleiche tun, wenn wir auch eine 0: 1-zu-1-Beziehung haben oder 1-1 die bewährte Methode für diese Art von Situation, wenn referentielle Integrität genauso wichtig ist wie der Rechenaufwand?

Antworten:

1 für die Antwort № 1

Es gibt drei mögliche Ansätze, wenn wir eine 1: 1-Beziehung zum relationalen Modell abbilden:

  1. Fremdschlüssel-Ansatz: Wählen Sie eine der Beziehungen aus, z Fremdschlüssel in S der Primärschlüssel von T. Es ist besser, einen Entitätstyp zu wählen mit totaler Beteiligung an R in der Rolle von S.

  2. Zusammengeführte Beziehungsoption: Eine alternative Zuordnung eines 1: 1-Beziehungstyps ist möglich, indem die beiden Entitätstypen und die Beziehung zu einem zusammengeführt werden einzelne Beziehung. Dies kann sinnvoll sein, wenn beide Beteiligungen sind gesamt.

  3. Querverweis oder Beziehungsoption: Die dritte Alternative ist die Einrichtung einer dritten Relation R zum Zwecke der Querverweise Primärschlüssel der beiden Relationen S und T, die die Entitätstypen darstellen.

Für weitere Details können Sie dies überprüfen home.iitj.ac.in/~ramana/ch7-mapping-ER-EER-relations.pdf


0 für die Antwort № 2

Fremdschlüsseleinschränkungen sind BeschränkungenVerweise. Eine Beziehung besteht implizit dort, wo unterschiedliche Spalten dieselbe Domäne repräsentieren und ihre Tabellen mit oder ohne Fremdschlüssel verknüpft werden können. Die Einschränkung stellt lediglich sicher, dass die in einer Spalte gespeicherten Werte / Entitäten in einer anderen Spalte vorhanden sind. Sie sind überall dort zu verwenden, wo eine Relation von einer anderen abhängig ist, unabhängig von der Kardinalität einer der beiden. Der typische Anwendungsfall ist die Untertypen von Entitätsmengen.

Die Hauptvorteile von Fremdschlüsseleinschränkungen sindDie Leistungsgewinne (reduzierte Anrufe über die Leitung sowie Entwicklungszeit) werden durch das Kaskadieren von Aktualisierungen / Löschvorgängen von einer einzelnen Anweisung ermöglicht, anstatt eine ID abfragen zu müssen, bevor mehrere Aktualisierungs- / Löschanweisungen in einer Transaktion ausgeführt werden. Ganz zu schweigen von der Reparaturzeit, wenn Änderungen nicht ordnungsgemäß übertragen wurden.


0 für die Antwort № 3

Die M-zu-M-Beziehung entspricht zwei 1:M-Beziehungen. Wir können den Primärschlüssel von einer Seite nicht als Fremdschlüssel von anderen zuweisen. Zu diesem Zweck verwenden wir eine mittlere Entität, die ein M: M auflöst. Diese Entität wird typischerweise als "Assoziation" oder Kreuzungseinheit bezeichnet. B. eine M: M-Beziehung zwischen Projekt und Mitarbeiter. Eine neue Midlle-Entität kann eine Zuweisung sein. Auf diese Weise wird die Beziehung in 1: M umgewandelt, und wir können einen Fremdschlüssel leicht zuordnen