Ошибка говорит о том, что объект с именем temp
уже существует, поэтому вы не можете создать еще один.
Например, скажем, у вас уже есть таблица с таким именем:
SQL> create table temp (a number);
Table created.
Если вы попытаетесь построить свою процедуру, вы получите:
SQL> create or replace procedure temp
2 is
3 procedure sam
4 is
5 begin
6 dbms_output.put_line('This is from sample');
7 end;
8 begin
9 dbms_output.put_line('This is from test');
10 end;
11 /
create or replace procedure temp
*
ERROR at line 1:
ORA-00955: name is already used by an existing object
Это способ проверить наличие такого объекта:
SQL> select object_type from obj where object_name = 'TEMP';
OBJECT_TYPE
-------------------
TABLE