3,491
社区成员
发帖
与我相关
我的任务
分享
CREATE OR REPLACE PROCEDURE pnew AS
v_sql VARCHAR2(1000):=
'CREATE OR REPLACE PROCEDURE p01 AS
BEGIN
NULL;
END p01;
';
BEGIN
execute immediate v_sql;
EXCEPTION WHEN OTHERS THEN
raise_application_error(-20102,'** create procedure error **' ||sqlerrm);
END pnew;
--用create or replace就可以了,不用检测存不存在
create or replace procedure test
is
begin
dbms_output.put_line('test');
end;
/
--或者你用下面的语句判断是否存在,TEST为你的存储过程名字
select count(1) from all_objects where object_type='PROCEDURE'
and object_name ='TEST';