DBAtlas · Atlas für Datenbankbetrieb

ORA-00955: name is already used by an existing object (Name wird bereits von einem vorhandenen Objekt verwendet)

Oracle

Was bedeutet das?

Der Name des anzulegenden Objekts (Tabelle, Index, View, Sequence, Synonym usw.) wird im selben Schema bereits von einem anderen Objekt verwendet. In Oracle sind Objektnamen innerhalb eines Schemas eindeutig, und selbst unterschiedliche Typen wie Tabellen, Views und Sequences teilen sich denselben Namensraum.

Ursache

Der im CREATE-Statement gewählte Name kollidiert mit einem vorhandenen Objekt. Eine häufige Falle: Versuch, eine Sequence oder View mit demselben Namen wie eine Tabelle anzulegen; oder ein automatisch erzeugter Indexname (z. B. der Primary-Key-Index) kollidiert mit dem von dir angegebenen Namen.

Lösung

Wähle einen anderen Namen oder entferne das kollidierende Objekt. Um zu finden, welches Objekt den Namen verwendet: SELECT object_type, object_name FROM user_objects WHERE object_name = 'YOUR_NAME'; Willst du es wirklich ersetzen, lösche das alte Objekt mit DROP (sichere vorher seine Daten). CREATE OR REPLACE gibt es für Views, Synonyme, Typen und PL/SQL-Objekte (Prozedur, Funktion, Package, Trigger); für Tabellen, Indizes und Sequences existiert es nicht.

In DBAtlas öffnen →

Weitere Einträge zu dieser Datenbank