oracle中如何表存在先删除后创建
1、在讲Oralce前,我们先看一下Mysql的实现方式:
drop table if exists suspects;

2、Mysql自带表存在则删除功能,而Oracle是不带这种功能的,所以需要我们自己通过其他方式来实现
3、第一步:创建存储过程(procedure),语句如下:
-- 建立存储过程,如果表存在则删除
create or replace procedure proc_dropifexists(
p_table in varchar2
) is
v_count number(10);
begin
select count(*)
into v_count
from user_tables
where table_name = upper(p_table);
if v_count > 0 then
execute immediate 'drop table ' || p_table ||' purge';
end if;
end proc_dropifexists;

4、创建完存储过程后,我们就可以进行调用了,调用方法如下:
CALL proc_dropifexists('SCS_ASSET_CATEGORYSET');
其中CALL 是关键字,proc_dropifexists 存储过程名称,SCS_ASSET_CATEGORYSET是表名称

5、通过call调用后即可实现oracle中的先判断表是否存在,存在则删除后创建,赶快体验一下吧,超级酸爽
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:92
阅读量:99
阅读量:97
阅读量:188
阅读量:54