名称已由现有对象SQL Oracle使用

名称已由现有对象SQL Oracle使用,sql,oracle,plsql,Sql,Oracle,Plsql,我已经在一个在线编辑器上测试了这段代码,它工作得很好,但由于某些原因,它一直在给我SQL DEVELOPER中的错误- Error report - ORA-00955: name is already used by an existing object 00955. 00000 - "name is already used by an existing object" 我试着改变名字,但似乎没有解决问题 create or replace procedure Get

我已经在一个在线编辑器上测试了这段代码,它工作得很好,但由于某些原因,它一直在给我SQL DEVELOPER中的错误-

Error report -
ORA-00955: name is already used by an existing object
00955. 00000 -  "name is already used by an existing object"
我试着改变名字,但似乎没有解决问题

create or replace procedure Get_Fact ( x in number)
as
fac number:=1;
i number;

begin
    for i in 1..x
    loop
        fac:=fac*i;
    end loop;
 
    dbms_output.put_line('factorial='||fac);
end;
错误:

ORA-00955: name is already used by an existing object
是不言自明的;同一架构中的另一个对象具有相同的
GET\u FACT
标识符

您可以使用以下查询:

选择所有者,
对象名称,
对象类型
从所有对象
其中object_name='GET_FACT';
找出现有对象是什么


dbfiddle

@MT0给了你正确的答案,但我很好奇你是如何“在在线编辑器中测试”的。什么是“在线编辑”?听起来像是一些只进行语法检查的外部工具,而实际上编译代码(执行CREATE语句)所涉及的不仅仅是语法检查。