当前位置: 代码迷 >> Oracle开发 >> ◆◆◆请一类似SQLServer 语句IF exists 的Oracle写法,该如何处理
  详细解决方案

◆◆◆请一类似SQLServer 语句IF exists 的Oracle写法,该如何处理

热度:402   发布时间:2016-04-24 07:44:52.0
◆◆◆请一类似SQLServer 语句IF exists 的Oracle写法
SQL code
IF exists(SELECT NAME FROM sysobjects WHERE NAME = 'LoginCheck' AND type = 'p')DROP PROCEDURE LoginCheck

//上面是微软的SQL写法,判断一个对象是否存在,如存在则删除,请问Oracle有没有同样功能的语句,麻烦达人指点

------解决方案--------------------
SQL code
declare i int;begin  select count(*) into i from user_objects where object_name=upper('LoginCheck') and object_Type=upper('procedure');  if i>0 then    execute immediate 'DROP PROCEDURE LoginCheck';  end if;end;
------解决方案--------------------
begin
for i in (select null from user_objects where object_name=upper('LoginCheck') and object_Type=upper('procedure')) loop
execute immediate 'DROP PROCEDURE LoginCheck';
end loop;

end;
  相关解决方案