Announcement

Collapse
No announcement yet.

Spezialisierung

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

  • Spezialisierung

    Hallo ,

    ich habe da noch eine Frage zum Thema Spezialisierung.
    Ich habe die Tabellen

    Mitarbeiter (Mnr,name,...);
    Freie_Mit (Mnr,...,);
    Feste_Mit (Mnr,...,);

    wie kann ich Insert-Anweisungen ausführen und was ist mit der ref. Integrität. Muss ich die mit Trigger festlegen ?

    Gruß

    Destino

  • #2
    http://www.datenbank-sql.de/oracle-constraints.htm
    http://www.datenbank-sql.de/insert.htm

    Comment


    • #3
      So einfach ist das nicht oder hab ich was übersehen.
      Kann ich ganz normal werde einfügen. dann könnte ich ja von beiden untertabellen auf den gleichen datensatz der obertabelle zugreifen

      das muss ich verhindern, und wie ?

      Comment


      • #4
        "Kann ich ganz normal werde einfügen. dann könnte ich ja von beiden untertabellen auf den gleichen datensatz der obertabelle zugreifen"

        kannst du mir das ins Deutsche übersetzen.

        Comment


        • #5
          Nur für dich ...

          Also wenn ich die Datensätze mit der INSERT- Anweisung in die drei Tabellen einfüge ist es mir möglich, da ich ja nur einen FK in den Subtabellen auf die Obertabelle habe, von den Subtabellen auf den gleichen Datensatz oder Schlüssel in der Obertabelle zugreiffen.

          Frei_Mit 102 ---> Mitarbeiter 102
          Feste_Mit 102 ---> Mitarbeiter 102

          Das will ich aber net !!!

          Meine Frage ist, wie verhindere ich das?
          Brauche ich dazu ein Attribut in der Obertabelle um zwischen den Subtabellen zu unterscheiden ?

          Comment


          • #6
            Originally posted by Destino View Post
            Brauche ich dazu ein Attribut in der Obertabelle um zwischen den Subtabellen zu unterscheiden ?


            - Nein, aber ein anderes Datenmodel :-). Wenn ich dich richtig verstanden habe (bitte korrigiere mich, wenn ich falsch liege), würde dir doch 1 Tabelle MITARBEITER reichen, in der du alle Mitarbeiter einträgst. Die Unterscheidung "freier" oder "fester" Mitarbeiter kannst du als Attribut in dieser Tabelle abbilden. Die Konsistenz der Daten ereichst du auf diesem Attribut mit einen Check-Constraint, oder meinetwegen auch mit einer Referenz auf eine Tabellle, in der die möglichen Typen von Mitarbeitern abgebildet sind.


            Gruss

            Comment

            Working...
            X