Announcement

Collapse
No announcement yet.

Einen nicht Primär/Fremdschlüssel in anderer Tabelle aufführen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Einen nicht Primär/Fremdschlüssel in anderer Tabelle aufführen

    Hallo Leute,

    ich bin neu hier und würde mich über etwas Hilfe freuen, und zwar habe ich zwei Tabellen 1.Buch , 2. Autor ich möchte eine dritte Tabelle erstellen und festhalten welches Buch von welchem Auto geschrieben wurde usw. jedoch habe ich in meiner Tabelle Autor eine ID als Primärschlüssel festgelegt, ich möchte aber das der Vorname und der Nachname des Autors in der dritten Tabelle aufgeführt wird. Für Tipps wäre ich sehr Dankbar.

    Frage : Könnte man die ID weglassen und einen zusammengesetzten Primärschlüssel aus Vor und Nachname in Tabelle Autor machen und den dann als fremdschlüssel in der neuen Tabelle? (Habs versucht, funktioniert anscheinend nicht )

    Mit freundlichem Gruß
    Maurice Eckhardt
    Zuletzt editiert von LaieTheFirst; 15.02.2020, 18:21.

  • #2
    Wozu eine dritte Tabelle, wenn du schon ein Tabelle Buch hast
    Die Tabelle Buch enthält für jedes Buch den Titel und die ID des Autors, sowie ein ID des Datensatzes
    Wozu sollen redundant nun der Name und der Vorname in einer extra Tabelle sein?
    Dies sind Daten, die zum Autor gehören
    Jeder Datensatz sollte zu Identifikation eine eindeutige ID haben. Diese sollte nicht aus Geschäftsdaten bestehen, sondern tech. Natur sein

    https://de.wikipedia.org/wiki/Normal...ng_(Datenbank)

    Siehe 2. Nornalform und das Beispiel mit der CD
    Zuletzt editiert von Christian Marquardt; 15.02.2020, 18:39.
    Christian

    Comment


    • #3
      Mein Ziel ist jedoch nicht die ID anzeigen zu lassen sondern den Vor & Nachnamen, Ein Autor schreibt mehrere Bücher, Ein Buch wurde von mehrerern Autoren geschrieben.

      Danke Trotzdem

      Mit freundlichen Grüßen

      Comment


      • #4
        Bitte trotzdem
        Bin immer wieder erstaunt, wie Leute innerhalb von 5 Minuten Links lesen und verstehen können, zumal sie vorher offenbar keine Ahnung haben
        Mein Ziel ist jedoch nicht die ID anzeigen zu lassen sondern den Vor & Nachnamen,
        Was hat das damit zu tun?

        Du hast eine Tabelle AUTOR
        mit den Spalten ID, NAME, VORNAME

        Und ein Tabelle BUCH
        mit den Spalten ID, AUTOR_ID, TITEL

        Was genau hindert sich jetzt an der Anzeige?
        Christian

        Comment


        • #5
          Dein Link funktioniert nicht und mein Wunsch ist nicht die ID zu sehen und dann schauen zu müssen zu wem diese gehört sondern direkt den Namen bekommen.

          Nun zur Frage an Forenmitglieder: Ist dies möglich?

          Comment


          • #6
            Jetzt geht er
            mein Wunsch ist nicht die ID zu sehen und dann schauen zu müssen zu wem diese gehört sondern direkt den Namen bekommen.
            Das geht mit der von mir angegebenen Struktur; diese entspricht den Design von Datenbanken.
            Eine ID musst du nicht sehen
            Christian

            Comment


            • #7
              Originally posted by Christian Marquardt View Post
              Jetzt geht er

              Das geht mit der von mir angegebenen Struktur; diese entspricht den Design von Datenbanken.
              Eine ID musst du nicht sehen
              m:n Ist es nicht Redudant mehrere Informationen in einer Zeile zu haben. Es können ja mehere Autoren ein Buch geschrieben haben.

              PS: Erledigt vielen Dank Trotzdem

              Mit freundlichen Grüßen
              Zuletzt editiert von LaieTheFirst; 15.02.2020, 19:03. Reason: Erledigt

              Comment


              • #8
                Ja, dann wird entweder der Titel gedoppelt oder dieser in eine Tabelle Buchtitel ausgelagert und die Tabelle BUCH ist dann
                ID, AUTOREN_ID,BUCH_TITEL_ID
                Christian

                Comment


                • #9
                  Tut mir leid das musst du mir jetzt mal erklären?

                  Comment


                  • #10
                    Wenn du das mit dem auflösen der Redundanz so weit treiben willst, dass diese komplett aufgelöst sind, musst du die redundanten Daten jeweils in eine extra Tabelle auslagern und mittels ID darauf verweisen.
                    Die Tabelle Buch enthält dann die ID der Datensätze, die ID des Autors und die ID zum Titel. Ist ein Titel von zwei Autoren verfasst, ist die ID zum Buchtitel jeweils gleich
                    Autor
                    ID NAME VORNAME
                    1 Müller Peter
                    2 Schmidt Hans
                    Buch
                    ID AUTOR_ID TITLE_ID
                    1 1 1
                    2 1 2
                    3 2 1
                    Titel
                    ID TITEL
                    1 Schöne neue Welt
                    2 Per Anhalter
                    Autor 1 hat zwei Titel geschrieben, Autor 2 war CO-Autor bei Titel 1
                    Zuletzt editiert von Christian Marquardt; 15.02.2020, 19:22.
                    Christian

                    Comment


                    • #11
                      Top Lösung danke dir

                      Comment


                      • #12
                        Da sich die Buchtitel nicht ändern werden und auch die Beziehung Autor-Titel wohl bestehen bleibt, würde ich die Auflösung des Titel nicht vornehmen
                        Christian

                        Comment

                        Working...
                        X