Ih habe hier 2 Tabellen:
CREATE TABLE Adresse(
plz INTEGER,
ort VARCHAR2(50),
CONSTRAINT pk_Adresse1 PRIMARY KEY(plz)
);
CREATE TABLE Person(
id INTEGER,
name VARCHAR2(50),
idAdresse INTEGER,
art VARCHAR2(50),
idParent INTEGER,
CONSTRAINT pk_buergerV3 PRIMARY KEY(id,idParent),
CONSTRAINT pkey_buergerV3 FOREIGN KEY (idAdresse) REFERENCES Adresse(plz),
CONSTRAINT pkey_personParent FOREIGN KEY(idParent) REFERENCES Person(id),
CONSTRAINT ck_PersonArtV3 CHECK (art = 'Buerger' OR art = 'Beamte' OR art = 'beides')
);
Ich will in der Tabelle Person einen idParent haben der (falls es Kinder gibt) auf den parent id referenziert. Ich bekomme hier den Fehler: "kein entsprechender Primär- o. eindeutiger Schlüssel für diese Spaltenliste"
Ist es möglich auf die gleiche Tabelle zu referenzieren?
CREATE TABLE Adresse(
plz INTEGER,
ort VARCHAR2(50),
CONSTRAINT pk_Adresse1 PRIMARY KEY(plz)
);
CREATE TABLE Person(
id INTEGER,
name VARCHAR2(50),
idAdresse INTEGER,
art VARCHAR2(50),
idParent INTEGER,
CONSTRAINT pk_buergerV3 PRIMARY KEY(id,idParent),
CONSTRAINT pkey_buergerV3 FOREIGN KEY (idAdresse) REFERENCES Adresse(plz),
CONSTRAINT pkey_personParent FOREIGN KEY(idParent) REFERENCES Person(id),
CONSTRAINT ck_PersonArtV3 CHECK (art = 'Buerger' OR art = 'Beamte' OR art = 'beides')
);
Ich will in der Tabelle Person einen idParent haben der (falls es Kinder gibt) auf den parent id referenziert. Ich bekomme hier den Fehler: "kein entsprechender Primär- o. eindeutiger Schlüssel für diese Spaltenliste"
Ist es möglich auf die gleiche Tabelle zu referenzieren?