Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Gibt es einen Grund, Primärschlüssel und eindeutigen Schlüssel zusammen für dasselbe Feld zu verwenden?

Für eine Tabelle, die viele zu viele auflöst, wäre es üblich, einen zweiteiligen Schlüssel zu haben (wie von Quassnoi angegeben). Es ist auch sehr wahrscheinlich, dass Indizes benötigt werden, die den Zugriff über beide Eltern unterstützen.

Wenn Sie beispielsweise über die Tabellen PERSON, ADDRESS und PERSON_ADDRESS verfügen, kann Ihre Tabelle PERSON_ADDRESS den Primärschlüssel von (PERSON_ID, ADDRESS_ID) und einen unterstützenden Index enthalten. Sie hätten auch einen anderen Index für (ADDRESS_ID, PERSON_ID), und Sie würden diesen wahrscheinlich zu einem EINZIGARTIGEN Index machen (da es sich um eine eindeutige Kombination von Feldern handelt).

Es ist auch möglich, dass Ihr DBA eine bestimmte Methode zum Generieren von Tabellen hat, die mit einem UNIQUE-Index für die Primärschlüsselfelder beginnt, gefolgt von der Erstellung der PRIMARY KEY-Einschränkung. Das kann in einigen GUI-Tools in der von Ihnen vorgeschlagenen Weise angezeigt werden.