oracle怎么删除所有数据库表
1、先查询本库所有表,本文以TEST开头表为例,select * from user_tables t where table_name like 'TEST%';
2、查询表的数量,select count(*) from user_tables t where table_name like 'TEST%';
3、编写删除表的sql脚本,
declare
v_sql varchar2(200);
v_cnt number(10);
begin
for v_tab in (select table_name from user_tables t where table_name like 'TEST%') loop
v_sql := 'drop table '|| v_tab.table_name;
execute immediate v_sql ;
end loop;
end;
4、再次查看TEST开头的表,select * from user_tables t where table_name like 'TEST%',已无记录,
2018-08-04 · 知道合伙人软件行家
可以使用以下3种方式实现:
1、如果有plsql客户端,则可以使用该用户登录,选中所有表 右键Drop即可。
2、如果有删除用户的权限,则可以写:
drop user user_name cascade;
加了cascade就可以把用户连带的数据全部删掉。
3、如果没有删除用户的权限,则可以执行:
select 'drop table '||table_name||';' from cat where table_type='TABLE'
1、如果有plsql客户端,则可以使用该用户登录,选中所有表 右键Drop即可。
2、如果有删除用户的权限,则可以写:
drop user user_name cascade;
加了cascade就可以把用户连带的数据全部删掉。
3、如果没有删除用户的权限,则可以执行: select 'drop table '||table_name||';' from cat where table_type='TABLE'