oracle刪除某個使用者所有表

2022-03-02 08:38:42 字數 1246 閱讀 8901

1、

select   'drop   table   '||table_name||';'    

from   all_tables  

where   owner='要刪除的使用者名稱(注意要大寫)';

2、刪除所有表

以使用者test為例

for example:

declare

cursor cur1 is select table_name from dba_tables where owner='test';

begin

for cur2 in cur1 loop

execute immediate 'drop table test.'||cur2.table_name;

end loop;

end;

3、這個刪除當前使用者的所有物件(表、檢視、觸發器、儲存過程、函式)

沒試過declare

type name_list 

istable

ofvarchar2(40

);type type_list 

istable

ofvarchar2(20

);tab_name name_list:

=name_list();

tab_type type_list:

=type_list();

sql_str 

varchar2

(500

);begin

sql_str :='

select uo.object_name,uo.object_type from user_objects uo where uo.object_type not in(

''index'',

''lob

'') order by uo.object_type desc';

execute

immediate sql_str 

bulk

collect 

into

tab_name,tab_type;

fori 

intab_name.first.. tab_name.last loop

sql_str :='

drop '||

tab_type(i) ||'

'||tab_name(i);

execute

immediate sql_str;

endloop;

end;

Oracle中刪除某個使用者下的所有表

一般的方法 先使用sql查詢 select delete from table name from user tables order by table name 將查詢結果複製一下,在sql命令視窗裡再執行一次就刪除了所有的表。select drop table table name from c...

Oracle刪除使用者所有表

先使用sql查詢 select delete from table name from user tables order by table name 將查詢結果複製一下,在sql命令視窗裡再執行一次就刪除了所有的表。select drop table table name from cat whe...

刪除某個使用者下的所有表

1 select drop table table name from all tables where owner 要刪除的使用者名稱 注意要大寫 2 刪除所有表 以使用者test為例 for example declare cursor cur1 is select table name fro...