在Oracle中若删除一个不存在的表,如 "DROP TABLE notExistTable",则会提示:ORA-00942:表或视图不存在,若使用程序执行该语句则会报异常,这就需要我们再删除表前判断该表是否存在,若存在则删除.下面是不使用存储过程实现删除表的SQL: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;
相关阅读:删除表空间报错ORA-600(ktssdrp1)错误 http://www.linuxidc.com/Linux/2012-08/67926.htmOracle 删除表名命名不合法的表 http://www.linuxidc.com/Linux/2012-07/66220.htmLinux下Oracle删除表空间引发错误的解决方法 http://www.linuxidc.com/Linux/2012-06/63319.htmOracle 误删除表数据恢复 http://www.linuxidc.com/Linux/2012-04/58186.htmOracle利用rowid删除表中重复记录 http://www.linuxidc.com/Linux/2012-03/57567.htmOracle无法删除表 http://www.linuxidc.com/Linux/2011-01/31709.htm更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12Oracle中报错Connect internal only, until freedBandwidthd+PostgreSQL数据库配置笔记相关资讯 Oracle删除表 本文评论 查看全部评论 (0)