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;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM