ORA-00955: Имя уже используется существующим объектом
OracleЧто это значит?
Имя создаваемого объекта (таблицы, индекса, представления, последовательности, синонима и т. д.) уже используется другим объектом в той же схеме. В Oracle имена объектов уникальны в пределах схемы, и даже объекты разных типов, такие как таблицы, представления и последовательности, разделяют одно пространство имён.
Почему возникает?
Имя, выбранное в операторе CREATE, конфликтует с существующим объектом. Частая ловушка: попытка создать последовательность или представление с тем же именем, что у таблицы; или автоматически созданное имя индекса (например, индекса первичного ключа) совпадает с указанным вами именем.
Как исправить
Выберите другое имя или удалите конфликтующий объект. Чтобы узнать, какой объект использует имя: SELECT object_type, object_name FROM user_objects WHERE object_name = 'YOUR_NAME'; Если действительно нужно его заменить, выполните DROP старого объекта (сначала сделайте бэкап его данных). CREATE OR REPLACE доступен для представлений, синонимов, типов и объектов PL/SQL (procedure, function, package, trigger); для таблиц, индексов и последовательностей его нет.
Ещё по этой СУБД
- ORA-01536Превышена квота пространства для табличного пространства
- direct path readОжидание: сессия читает блоки напрямую в PGA в обход buffer cache
- latch: cache buffers chainsОжидание: конкуренция за latch cache buffers chains
- ORA-02449На уникальные/первичные ключи таблицы ссылаются внешние ключи
- ORA-01950Нет привилегий на табличное пространство 'name'
- ORA-01110data file N: 'path'
- ORA-16038log N sequence# M cannot be archived