ORA-00955: name is already used by an existing object (el nombre ya lo usa un objeto existente)
Oracle¿Qué significa?
El nombre del objeto que intenta crear (tabla, índice, vista, secuencia, sinónimo, etc.) ya lo usa otro objeto del mismo esquema. En Oracle, los nombres de objeto son únicos dentro de un esquema, e incluso tipos distintos como tablas, vistas y secuencias comparten el mismo espacio de nombres.
¿Por qué ocurre?
El nombre elegido en la sentencia CREATE entra en conflicto con un objeto existente. Una trampa habitual: intentar crear una secuencia o vista con el mismo nombre que una tabla; o un nombre de índice creado automáticamente (p. ej., el índice de la clave primaria) que coincide con el nombre que indicó.
Cómo solucionarlo
Elija otro nombre o elimine el objeto en conflicto. Para averiguar qué objeto usa el nombre: SELECT object_type, object_name FROM user_objects WHERE object_name = 'YOUR_NAME'; Si realmente quiere sustituirlo, haga DROP del objeto antiguo (haga antes un backup de sus datos). CREATE OR REPLACE está disponible para vistas, sinónimos, tipos y objetos PL/SQL (procedure, function, package, trigger); no existe para tablas, índices y secuencias.
Más entradas de este motor
- ORA-01536space quota exceeded for tablespace (cuota de espacio superada en el tablespace)
- direct path readEspera: sesión que lee bloques directamente en la PGA sin pasar por el buffer cache
- latch: cache buffers chainsEspera: contención en el latch cache buffers chains
- ORA-02449unique/primary keys in table referenced by foreign keys (claves únicas/primarias referenciadas por claves foráneas)
- ORA-01950no privileges on tablespace 'name' (sin privilegios sobre el tablespace)
- ORA-01110data file N: 'path'
- ORA-16038log N sequence# M cannot be archived