ORACLE批量刪除表

2021-09-25 21:13:05 字數 640 閱讀 6218

我們在使用資料庫時可能會建立很多臨時表,時間長了這些臨時表會佔很大的空間所以我們要定期對自己不用的臨時表進行清理,下面介紹兩個我自己經常用的語句

方法一:簡單粗暴、通俗易懂

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;

直接執行這段**就可以了

在這裡插入描述

oracle批量刪除表

如下 declare 定義臨時變數用於儲存每一條刪除sql tmp sql varchar2 4000 定義游標變數用於儲存所有的刪除sql cursor drop sql is 查詢拼接出所有刪除sql select drop table table name from user tables w...

oracle批量刪除

專案中有個需求需要每個月末定時去刪除一張表裡的歷史資料,剛開始就寫了乙個簡單的delete語句,然後起乙個job定時去呼叫,後來被告知歷史資料量很大,所以從效能和安全上考慮對sql進行了如下修改 declare cursor id key cursor is select id key from x...

批量刪除表

批量刪除表 方法1 select truncate table object name from user objects where object name like ky prj temp and object type table command windows 下執行查詢結果 方法2 sel...