mullekular
Benutzer
- Beiträge
- 12
hallo zusammen,
ich sitze nun schon länger an folgendem Problem.
Ich habe folgende Tabellen:
"VOGELARTEN" mit dem Attribut "VogelArten_ID" (PRIM KEY)
"Checkliste" mit "VogelArten_ID, Location_ID" (beide PRIM KEY) references Arten,Location
in der Checkliste stehen jene Vogelarten, als Location Deutschland haben.
ich soll nun während ein Vogelbeobachter seinen Eintrag in der Datenbank macht folgendes überprüfen: Ist der Vogel in der Checkliste? Es dürfen also nur Vögel die in Deutschland leben eingetragen werden.
Ich habe nun an einen Constraint gedacht und der sieht so aus:
alter table ARTEN_HAT_BEOBACHTUNGEN add constraint notINCHECKLIST
foreign key (arten_id) references Checkliste(Arten_ID);
ich bekomme aber folgende Meldung:
Fehlerbericht:
SQL-Fehler: ORA-02270: kein entsprechender Primär- o. eindeutiger Schlüssel für diese Spaltenliste
02270. 00000 - "no matching unique or primary key for this column-list"
*Cause: A REFERENCES clause in a CREATE/ALTER TABLE statement
gives a column-list for which there is no matching unique or primary
key constraint in the referenced table.
*Action: Find the correct column names using the ALL_CONS_COLUMNS
catalog view
Ich gehe davon aus das es damit zu tun hat das in checkliste 2 Primary keys liegen. zumindest ist dasmeine Vermutung. Da es sich aber bei checkliste um eine n-n beziehung handelt, kann ich das nicht ändern.
Wie kann ich also eine EIngabe in Arten_Hat_Beobachtung darauf prüfen, ob der eintrag auch in Checkliste vorhaben ist?
ich sitze nun schon länger an folgendem Problem.
Ich habe folgende Tabellen:
"VOGELARTEN" mit dem Attribut "VogelArten_ID" (PRIM KEY)
"Checkliste" mit "VogelArten_ID, Location_ID" (beide PRIM KEY) references Arten,Location
in der Checkliste stehen jene Vogelarten, als Location Deutschland haben.
ich soll nun während ein Vogelbeobachter seinen Eintrag in der Datenbank macht folgendes überprüfen: Ist der Vogel in der Checkliste? Es dürfen also nur Vögel die in Deutschland leben eingetragen werden.
Ich habe nun an einen Constraint gedacht und der sieht so aus:
alter table ARTEN_HAT_BEOBACHTUNGEN add constraint notINCHECKLIST
foreign key (arten_id) references Checkliste(Arten_ID);
ich bekomme aber folgende Meldung:
Fehlerbericht:
SQL-Fehler: ORA-02270: kein entsprechender Primär- o. eindeutiger Schlüssel für diese Spaltenliste
02270. 00000 - "no matching unique or primary key for this column-list"
*Cause: A REFERENCES clause in a CREATE/ALTER TABLE statement
gives a column-list for which there is no matching unique or primary
key constraint in the referenced table.
*Action: Find the correct column names using the ALL_CONS_COLUMNS
catalog view
Ich gehe davon aus das es damit zu tun hat das in checkliste 2 Primary keys liegen. zumindest ist dasmeine Vermutung. Da es sich aber bei checkliste um eine n-n beziehung handelt, kann ich das nicht ändern.
Wie kann ich also eine EIngabe in Arten_Hat_Beobachtung darauf prüfen, ob der eintrag auch in Checkliste vorhaben ist?