Oracle删除表前判断表名是否存在若存在则删除
2019/6/30 21:18:25
本文主要是介绍Oracle删除表前判断表名是否存在若存在则删除,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
在Oracle中若删除一个不存在的表,如 "DROP TABLE notExistTable",则会提示:
ORA-00942:表或视图不存在,
若使用程序执行该语句则会报异常,这就需要我们再删除表前判断该表是否存在,若存在则删除.
下面是不使用存储过程实现删除表的SQL:
<span style="font-family:Times New Roman;font-size:18px;">DECLARE num NUMBER;
BEGIN
SELECT COUNT(1) INTO num FROM USER_TABLES WHERE TABLE_NAME = UPPER('tableName') ;
IF num > 0 THEN
EXECUTE IMMEDIATE 'DROP TABLE tableName' ;
END IF;
END;</span>
ORA-00942:表或视图不存在,
若使用程序执行该语句则会报异常,这就需要我们再删除表前判断该表是否存在,若存在则删除.
下面是不使用存储过程实现删除表的SQL:
复制代码 代码如下:
<span style="font-family:Times New Roman;font-size:18px;">DECLARE num NUMBER;
BEGIN
SELECT COUNT(1) INTO num FROM USER_TABLES WHERE TABLE_NAME = UPPER('tableName') ;
IF num > 0 THEN
EXECUTE IMMEDIATE 'DROP TABLE tableName' ;
END IF;
END;</span>
这篇关于Oracle删除表前判断表名是否存在若存在则删除的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!