最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
oracle 判断表是否存在的例子
时间:2022-06-29 09:50:51 编辑:袖梨 来源:一聚教程网
主要是查询all_tables表的TABLE_NAME和OWNER,如果表存在,则执行execute immediate 'drop table
TABLE_NAME';
--判断表是否存在,如果存在则删除
declare
num number;
begin
select count(1) into num from all_tables where TABLE_NAME = 'EMP' and OWNER='SCOTT';
if num=1 then
execute immediate 'drop table EMP';
end if;
end;
/
--创建表
CREATE TABLE EMP
(EMPNO NUMBER(4) NOT NULL,
ENAME VARCHAR2(10),
JOB VARCHAR2(9),
MGR NUMBER(4),
HIREDATE DATE,
SAL NUMBER(7, 2),
COMM NUMBER(7, 2),
DEPTNO NUMBER(2));
上面是创建表下面我们来看一个删除表前判断表名是否存在若存在则删除例子。
在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;
相关文章
- 《使命召唤:黑色行动6》战役双倍下注任务攻略 11-05
- 《使命召唤:黑色行动6》战役敏锐的眼睛任务攻略 11-05
- 《使命召唤:黑色行动6》战役请勿吸烟任务攻略 11-05
- 《怪物猎人:荒野》游戏气候介绍 11-05
- 《怪物猎人:荒野》丰饶期气候介绍 11-05
- 《龙腾世纪:影障守护者》游侠不同职业区别介绍 11-05