DBAtlas · 数据库运维图谱

ORA-00955: name is already used by an existing object(名称已由现有对象使用)

Oracle

含义

你要创建的对象(表、索引、视图、序列、同义词等)的名称已被同一 schema 中的另一个对象使用。在 Oracle 中,对象名在 schema 内唯一,即使是表、视图和序列等不同类型的对象也共享同一命名空间。

原因

CREATE 语句中选择的名称与现有对象冲突。常见陷阱:尝试创建与表同名的序列或视图;或自动创建的索引名(如主键索引)与你指定的名称冲突。

解决方法

选择其他名称或删除冲突的对象。要找出使用该名称的对象:SELECT object_type, object_name FROM user_objects WHERE object_name = 'YOUR_NAME'; 如果确实要替换,DROP 旧对象(先备份其数据)。CREATE OR REPLACE 适用于视图、同义词、类型和 PL/SQL 对象(过程、函数、包、触发器);不适用于表、索引和序列。

在 DBAtlas 中打开 →

同一数据库的其他条目