我们在使用数据库时可能会创建很多临时表,时间长了这些临时表会占很大的空间所以我们要定期对自己不用的临时表进行清理,下面介绍两个我自己经常用的语句
方法一:简单粗暴、通俗易懂
SELECT ‘DROP TABLE ‘||TABLE_NAME||’;’ FROM USER_TABLES WHERE TABLE_NAME LIKE ‘TMP_CT%’
直接把执行的结果复制到另一个SQL窗口执行即可
方法二:效率高
DECLARE
LNAME VARCHAR2(200);
BEGIN
FOR X IN (select TABLE_NAME from user_tables
where table_name like ‘TMP_CT%’)
LOOP
LNAME:= X.TABLE_NAME;
EXECUTE IMMEDIATE 'DROP TABLE '|| X.TABLE_NAME ;
END LOOP;
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.put_line(LNAME);
RAISE;
END;
直接执行这段代码就可以了
在这里插入图片描述