SQL> CREATE OR REPLACE PROCEDURE ACCESS_PROD_INST AS
2 BEGIN
3 INSERT INTO ACCESS_PROD_INST PROD_INST_iD SELECT PROD_INST_iD FROM ACCESS_PROD_INST@CRMBM;
4 END;
5 /
CREATE OR REPLACE PROCEDURE ACCESS_PROD_INST AS
BEGIN
INSERT INTO ACCESS_PROD_INST PROD_INST_iD SELECT PROD_INST_iD FROM ACCESS_PROD_INST@CRMBM;
END;
ORA-00955: 名称已由现有对象使用
SQL> SHOW ERRORS
No errors for PROCEDURE ORA9.ACCESS_PROD_INST
【ORA-00955: 名称已由现有对象使用】
这个错误说的不仅仅是有可能你有存储过程使用了【ACCESS_PROD_INST】,还有可能是你有表名叫【ACCESS_PROD_INST】或者其他oracle对象叫【ACCESS_PROD_INST】。
说明:其实由于你已经使用了【create or repalace procedure】即使有存储过程叫【ACCESS_PROD_INST】也会被覆盖掉,你用下面的命令查询一下,有什么对象叫【ACCESS_PROD_INST】,删掉它或者换一个存储过程名字。
【SELECT OBJECT_NAME,OBJECT_TYPE FROM USER_OBJECTS WHERE OBJECT_NAME='ACCESS_PROD_INST';】