Information ausblenden
Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, MariaDB, Oracle, Sql-Server, Postgres, Access uvm

Funktionale Abhängigkeiten

Dieses Thema im Forum "Datenmodellierung, Datenbank-Design" wurde erstellt von Timmy21, 24 Januar 2014.

  1. Timmy21

    Timmy21 Benutzer

    Hallo, dringende Frage :)
    1. Das Relationenschema R=( {D, E, F, G}, { DE→G, D→F, EG→D }) ) verfügt über die beiden Schlüsselkandidaten DE und EG. (Dies dürfen Sie im folgenden annehmen.)

      Welche der nachfolgenden Aussagen treffen zu?

      (a) Das Nichtschlüsselattribut F hängt voll funktional von DE ab. (b) Das Nichtschlüsselattribut F hängt voll funktional von EG ab. (c) Das Nichtschlüsselattribut F hängt direkt von DE ab.
      (d) Das Nichtschlüsselattribut F hängt direkt von EG ab.
      (e) Das Schema liegt nicht in 2NF vor.
      (f) Das Schema liegt in 2NF aber nicht in 3NF vor. (g) Das Schema liegt in 3NF vor.


      DE und EG sind ja Schlüssel. Mittels Axiomen (kp wie das heißt) kann man ja D-->F zu DE-->EF, also DE-->F umformieren. Frage ist nun, ob (c) richtig ist, also ob F direkt von DE abhängig ist, weil das Axiomatisch umgeformt wurde, oder ob DE-->D-->F transitiv ist. Bevor das im handfesten Streit ausartet, brauchen wir eine zweite Meinung.

      Danke im Voraus :)
     
  2. akretschmer

    akretschmer Datenbank-Guru

    Ähm - ich bin raus.

    Andreas
     
  3. Hony%

    Hony% Datenbank-Guru

    Wenn F von D funktional abhängig ist ist D ein Schlüssel. D ist in DE nur ein Teil des Schlüssels. Daher kann F weder direkt noch transistiv von DE abhängen.

    Beispiel:
    Code:
    D E F
    1 2 3
    1 3 3
    1 4 3
    D-->F ist immer erfüllt. DE-->F hingegen nicht.


    Was aber gilt ist:
    EG-->D-->F
    Damit ist F transistiv von EG funktional abhängig.
     
  4. Timmy21

    Timmy21 Benutzer

    DE ist Schlüssel, da kann die Tabelle nicht stimmen
     
  5. Hony%

    Hony% Datenbank-Guru

    Und warum nicht?
     
  6. Timmy21

    Timmy21 Benutzer

    In der Tabelel ist DE-->F erfüllt. Es gibt keine 2 identische DE Zeilen mit unterschiedlichen F Werten
     
  7. Hony%

    Hony% Datenbank-Guru

    Gut möglich aber für (c) irrelevant. Dass es keine solchen Tupel gibt hängt vermutlich von DE→G und GE→D ab. Damit kann es durchaus eine indirekte Abhängigkeit geben.
     
  8. Timmy21

    Timmy21 Benutzer

    Aber D-->F, DE-->EF also DE-->F war doch eine korrekte axiomatische Umformung?!
     
  9. Hony%

    Hony% Datenbank-Guru

    Also entweder stehe ich gerade gewaltig auf dem Schlauch oder das ist Quatsch.
    Code:
    EG-->D, D-->F also EG-->F
    Das ist für mich logisch. Aber das von dir kann ich nicht nachvollziehen. Woher soll sich den DE-->EF ergeben?

    Vielleicht hast du da einen Link oder ein deutliches Beispiel für mich?
     
  10. Timmy21

    Timmy21 Benutzer

  11. Hony%

    Hony% Datenbank-Guru

    Code:
    2. Gilt A-->B, so gilt auch AC->BC für jede Menge von Attributen C der Relation. (Erweiterungsregel, Verstärkung)
    Code:
    D-->F, DE-->FE
    Ok. Insofern logisch, da E-->E eine triviale Abhängigkeit ist.
    Code:
    5. Gilt A-->BC, so gelten auch A-->B und A-->C. (Dekompositions-/Zerlegungsregel)
    Hier stimmt es aber schon nicht mehr. Das gilt zwar uneingeschränkt für einzelne Schlüssel. Aber eben nicht für zusammengesetzte. Und das ist an meiner kleinen Tabelle auch gut zu erkennen:
    Code:
    D E F
    1 2 3
    1 3 3
    1 4 3
    D-->F gilt
    DE-->FE gilt
    DE-->F gilt nicht
     
  12. Timmy21

    Timmy21 Benutzer

    Dann wäre aber DE kein Schlüsselkandidat, wenn DE-->F nicht gilt. Das steht aber schon in der Aufgabe dass das stimmt
     
  13. Hony%

    Hony% Datenbank-Guru

    Die Aussage negiere ich doch nicht. Im Schlüssel DE ist der Schlüssel D enthalten und damit kann F bestimmt werden. Ich kann ja nichts für die gegebene Relation. Zu den Punkten (e)-(g) will ich mich nicht äußern.
    Meine dargelegte Meinung ist eben, dass (c) nicht zutrifft.

    Fürs erste bin ich jetzt aber auch weg. Nachtschlaf ist was schönes.

    Gn8 Hony
     
  14. Hony%

    Hony% Datenbank-Guru

    Um die Sache noch etwas deutlicher zu machen:
    F ist funktional von DE abhängig: D,E→F
    F ist voll funktional von D abhängig: D→F

    Da D,E der Schlüssel ist muss/kann D innerhalb der Relation nicht eindeutig sein. Daher gilt: D,E→D→F
    D,E→D ist eine triviale Abhängigkeit

    Deshalb ist F direkt von D aber nicht von D,E abhängig.

    Welche Auswirkungen das auf die Normalform hat lasse ich jetzt bewusst weg.

    Gruß
    Hony
     
  15. Hony%

    Hony% Datenbank-Guru

    15 Minuten Bearbeitungszeitraum?

    Um auf die Streitfrage zurück zu kommen. Die Abhängigkeit ergibt sich also transitiv und nicht direkt.

    Auf jeden Fall mal Danke für die Gelegenheit meine theoretischen Grundlagen aufzufrischen. In der Praxis wendet man vieles davon einfach nur an ohne sich die genaueren Zusammenhänge bewusst zu machen. Erschwerend kommt bei solchen Aufgaben dazu, dass bewusste Fallstricke eingebaut wurden die in der Praxis oft direkt vermieden werden.

    Gruß
    Hony
     
    Walter, ukulele und akretschmer gefällt das.
Die Seite wird geladen...

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden