Oracle-Fremdschlüssel

Titel & Beschreibung
FOREIGN KEYS
Ein Fremdschlüssel ist eine Möglichkeit, die referenzielle Integrität in Ihrer Oracle-Datenbank durchzusetzen. Ein Fremdschlüssel bedeutet, dass Werte in einer Tabelle auch in einer anderen Tabelle erscheinen müssen.

Die referenzierte Tabelle wird als übergeordnete Tabelle bezeichnet, während die Tabelle mit dem Fremdschlüssel als untergeordnete Tabelle bezeichnet wird. Der Fremdschlüssel in der untergeordneten Tabelle verweist im Allgemeinen auf einen Primärschlüssel in der übergeordneten Tabelle.

Ein Fremdschlüssel kann entweder in einer CREATE TABLE-Anweisung oder einer ALTER TABLE-Anweisung definiert werden.

ENABLE A FOREIGN KEY
In Oracle wurde möglicherweise ein Fremdschlüssel angezeigt, der deaktiviert wurde. Sie können den Fremdschlüssel mit der Anweisung ALTER TABLE aktivieren.
DISABLE A FOREIGN KEY
Nachdem Sie in Oracle einen Fremdschlüssel erstellt haben, kann es vorkommen, dass Sie den Fremdschlüssel deaktivieren müssen. Sie können dies mit der ALTER TABLE-Anweisung in Oracle tun.
DROP A FOREIGN KEY
Nachdem ein Fremdschlüssel erstellt wurde, können Sie den Fremdschlüssel aus der Tabelle löschen. Sie können dies mit der ALTER TABLE-Anweisung in Oracle tun.
FOREIGN KEY (CASCADE DELETE)
Ein Fremdschlüssel mit kaskadierter Löschung bedeutet, dass beim Löschen eines Datensatzes in der übergeordneten Tabelle die entsprechenden Datensätze in der untergeordneten Tabelle automatisch gelöscht werden. Dies wird in Oracle als Kaskadenlöschung bezeichnet.

Ein Fremdschlüssel mit einer Kaskadenlöschung kann entweder in einer CREATE TABLE-Anweisung oder einer ALTER TABLE-Anweisung definiert werden.

FOREIGN KEY (SET NULL DELETE)
Ein Fremdschlüssel mit „Set NULL on Delete“ bedeutet, dass beim Löschen eines Datensatzes in der übergeordneten Tabelle die entsprechenden Datensätze in der untergeordneten Tabelle auf Null gesetzt werden. Die Datensätze in der untergeordneten Tabelle werden nicht gelöscht.

Ein Fremdschlüssel mit einem „Set NULL on Delete“ kann entweder in einer CREATE TABLE-Anweisung oder einer ALTER TABLE-Anweisung definiert werden.