Oracle表存在则删除后再重建
Posted 坚守梦想
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle表存在则删除后再重建相关的知识,希望对你有一定的参考价值。
简单的执行方式:
drop table USERINFO; create table USERINFO ( EnglishName varchar(30), ChineseName varchar(30), Sex varchar(10), Age int, BirthPlace varchar(100), BirthDate date default sysdate );
上面的方式有个缺陷,如果表不存在,那么会drop语句会报错
ORA-00942: table or view does not exist
更加优秀的执行方式:
declare w_count int; w_name varchar(20); begin w_name:=\'USERINFO\'; select count(*) into w_count from user_tables where table_name = w_name; if(w_count>0) then execute immediate \'drop table USERINFO\'; end if; execute immediate \'create table USERINFO ( EnglishName varchar(30), ChineseName varchar(30), Sex varchar(10), Age int, BirthPlace varchar(100), BirthDate date default sysdate )\'; end;
以上是关于Oracle表存在则删除后再重建的主要内容,如果未能解决你的问题,请参考以下文章
oracle创建表之前判断表是不是存在,如果存在则删除已有表
oracle创建表之前判断表是不是存在,如果存在则删除已有表
如果存在则删除表 Oracle,SQL Developer [重复]
删除掉mysql 的.ibd,.frm,ibdata1,ib_logfile0和ib_logfile1文件后再drop表。然后重建此表,有问题吗