Announcement

Collapse
No announcement yet.

Spalten mit der ID spalte der eigenen Tabelle verknüpfen. geht das?

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

  • Spalten mit der ID spalte der eigenen Tabelle verknüpfen. geht das?

    Kann ich das hier machen?

    Tabelle:datei
    Spalte1:datei_id
    Spalte2:datei_hash
    Spalte3:datei_endung
    spalte4:datei_verwantschaft | verknüpft mit tabelle:verwandschaft Spalte1:verwandschaft_id


    Tabelle:verwantschaft
    Spalte1:verwantschaft_dateiid_1 | verknüpft mit tabelle:datei Spalte1:datei_id
    Spalte2:verwantschaft_dateiid_2 | verknüpft mit tabelle:datei Spalte1:datei_id
    Spalte3:verwantschaft_dateiid_3 | verknüpft mit tabelle:datei Spalte1:datei_id
    spalte4:verwantschaft_verwantschaftid_1 | verknüpft mit tabelle:verwandschaft Spalte1:verwandschaft_id

    Da ich die datenbank derzeit ermal nur als Diagramm mache, würde ich mir gerne unötige arbeit sparren wenn es eh nicht klapt. Vor allem bei einer größe von 7 Datenbanken mit mehr als 500 Tabellen und über 3000 Spalten.

  • #2
    Hallo,

    prinzipiell kann man Tabellen schon mit sich selbst verknüpfen, wenn man Aliasnamen benutzt. Hier ein einfaches Beispiel:

    Tabelle
    Spielzeug, Farbe

    Ich suche jetzt Paare mit verschiedenen Spielzeugen, die die gleiche Farbe haben:

    select t1.Spielzeug, t1.Farbe,t2.Spielzeug,T2.Farbe
    from Tabelle t1, Tabelle t2
    where t1.Spielzeug<>t2.Spielzeug and t1.Farbe=t2.Farbe

    Gruß

    frauwue
    docendo discimus

    Comment


    • #3
      Originally posted by Grakvaloth View Post
      ...Kann ich das hier machen?...
      Prinzipiell kann man alles machen! Die Frage ist jedoch: Was ist richtig und was ist sinvoll?
      Und diese Frage läßt sich mit deinen Metadaten nicht beantworten. Du hast uns die Tabelle "verwandschaft" vorenthalten und dafür eine Beschreibung der Tabelle "verwantschaft" geliefert. Sollte es sich dabei lediglich um Schreibfehler handeln, dann fehlt in dieser Tabelle die referenzierte Spalte1:verwandschaft_id.
      Sollte dagegen die Schreibweise korrekt sein und es sich um unterschiedliche Tabellen handeln, dann solltest du beim nächsten mal etwas passendere Namen wählen.

      Ansonsten gilt das von frauwue gesagte. Wobei man beachten muß, das in Tabellen, die sich gegenseitig referenzieren einer der beiden Schlüssel ein NULL-Feld sein muß und einige Besonderheiten beim Einfügen und Löschen zu beachten sind.

      Gruß Falk
      Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

      Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

      Comment

      Working...
      X