oracle提示“ORA-00955: 名称已由现有对象使用”怎么解决?

2024-11-03 03:14:32
推荐回答(3个)
回答(1):

在Synonyms(Oracle数据库,PL/SQL Developer 工具)条目下。 查看是否存在同义词。

有的话将同义词删除就可以了。

【ORA-00955: 名称已由现有对象使用】 这个错误说的不仅仅是有可能你有存储过程使用了【student2】,还有可能是你有表名叫【student2】或者其他oracle对象叫【student2】。

说明:其实由于你已经使用了【create or repalace procedure】即使有存储过程叫【student2】也会被覆盖掉,你用下面的命令查询一下,有什么对象叫【student2】,删掉它或者换一个存储过程名字。  【SELECT OBJECT_NAME,OBJECT_TYPE FROM USER_OBJECTS WHERE OBJECT_NAME='STUDENT2';】

回答(2):

(1)elect a.OBJECT_type,a.* from user_objects a where a.OBJECT_NAME = '设备执行库房', 查下看看,是不是已经有视图或者过程存在。                                                      (2)你的设备执行库房是一张视图已经存在数据库中了,表的名称不能与视图重复.你可以执行drop view 设备执行库房;把视图删了

(1) 创建表时,如果报ORA-00955名称已由现有对象使用,但select时候,又查不到。
(2) 还有可能。同义词重名了。在Synonyms(Oracle数据库,PL/SQL Developer 工具)条          目下。 查看是否存在同义词。有的话将同义词删除就可以了。

回答(3):

select a.OBJECT_type,a.* from user_objects awhere a.OBJECT_NAME = '设备执行库房'查下看看,是不是已经有视图或者过程存在。。