Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 14 von 14

Thema: FK-Beziehung durch Trigger ersetzen

  1. #11
    benwen ist offline Neuer Benutzer
    Registriert seit
    19.03.2007
    Beiträge
    21

    Standard

    MYDB=# \d base.vertex_edge
    Tabelle »base.vertex_edge«
    Spalte | Typ | Attribute
    ----------+------+-----------
    edgeID | text | not null
    vertexID | text | not null
    Indexe:
    »vertex_edge_pkey« PRIMARY KEY, btree ("edgeID")
    Fremdschlüssel-Constraints:
    »vertex_edge_vertexID_fkey« FOREIGN KEY ("vertexID") REFERENCES base.vertex(
    "vertexID")

  2. #12
    ads
    ads ist offline Super-Moderator
    Registriert seit
    08.02.2006
    Ort
    MD
    Beiträge
    4.056

    Standard

    Gut, passt soweit. Die Struktur sah in der ersten Ausgabe etwas komisch aus.

    Kannst du uns jetzt noch die Inhalte aus der ersten Tabelle pasten, die du referenzierst?
    Xandrian: Kurz gesagt: Du hast ein falsches Konzept und willst nicht auf ads hören

    Jetzt NEU: PostgreSQL - Datenbankpraxis für Anwender, Administratoren und Entwickler

    PostgreSQL Service & Support

  3. #13
    akretschmer ist gerade online Super-Moderator
    Registriert seit
    29.10.2006
    Ort
    Dresden
    Beiträge
    5.472

    Standard

    Zitat Zitat von benwen Beitrag anzeigen
    Ich dachte ich hätte das Problem ausreichend beschrieben. Die genaue Fehlermeldung steht in meinem 2. Post.

    Nochmal (etwas konkreter) zum Fehler:
    Ich habe eine FK-Beziehung zwischen zwei Tabellen aufgebaut nach dem klassischen Schema:

    ... Tabellen mit inheritance

    Ich bin mir wie gesagt 100 %ig sicher, dass 'id1' in der referenzierten Tabelle 'vertex' vorhanden ist.
    Ich hoffe die Beschreibung genügt nun.
    Das funktioniert (leider) nicht so, wie man sich das vorstellt. Lese Dir bitte PostgreSQL: Documentation: Manuals: PostgreSQL 8.1: Inheritance durch. Vermutlich findest Du die Ursache für Dein Problem dort erklärt.

    Andreas
    --
    ads Das hatte dir akretschmer gestern schon gesagt und siehe da sobald du das machst, funktioniert es ;-)
    https://www.xing.com/profile/Andreas_Kretschmer7

  4. #14
    benwen ist offline Neuer Benutzer
    Registriert seit
    19.03.2007
    Beiträge
    21

    Standard Gelöst - ohne Vererbung

    Hallo nochmal und danke für die Hilfe,

    mittlerweile fand ich heraus, dass die Ursache tatsächlich in der Vererbung zu finden ist. Letztendlich hat die Vererbung in PG kaum etwas mit der Funktionalität einer Klassenhierachie der objektorientierten Programmierung zu tun. Ich habe jetzt ein neues Datenbankschema entworfen, ohne jegliche Vererbung. Auf diese Weise wird das Ganze wesentlich transparenter und man weiß was passiert.

    Mir fällt gerade kein Bereich ein, in der die Vererbung so richtig Sinn macht. Zumindest nicht, wenn die Datenbank wirklich konsistent sein soll. Also lieber auf die herkömmlichen Assoziationen setzen, da gibts keine Probleme.

    Gruß
    benwen

Seite 2 von 2 ErsteErste 12

Ähnliche Themen

  1. Zwischentabelle erstellen? m zu n Beziehung
    Von zaibatsi im Forum PGAdmin
    Antworten: 3
    Letzter Beitrag: 13.06.2010, 13:59
  2. Problem Arrayinhalt durch Variable in Funktion ersetzen
    Von S. Kaiser im Forum PL/pgSQL
    Antworten: 2
    Letzter Beitrag: 03.03.2010, 15:52
  3. Antworten: 8
    Letzter Beitrag: 03.02.2009, 14:48
  4. Antworten: 1
    Letzter Beitrag: 12.02.2008, 21:12
  5. NULL durch Text ersetzen
    Von Frank_b im Forum SQL
    Antworten: 1
    Letzter Beitrag: 27.11.2007, 10:58

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Links: Tobias Bauer - IT- und Funkdienstleistungen   -   Bilderrahmen-kaufen.de - Der Onlineshop für Bilderrahmen & Fotorahmen   -   Funkforum