如何清空oracle数据库所有表

新建的一个数据库,里面有好多table,我想把这些表全部清空。数据库语法会得少,如果可以用sql语句操作,请写完整,确保我能复制粘贴过去后能删除成功。
也可以用第三方,但过程一定要明确。(有图解最好)

一句话来说就是:清空oracle数据库里的tables的内容。谢谢

创建个存储过程来执行啦

 

在plsql中把以下代码复制粘贴,并运行

create or replace PROCEDURE SP_DROPTABLE
(v_begintime in varchar2,
v_endtime in varchar2)
as
v_tablename varchar2(256);
cursor cur_tablename is
select object_name from user_objects where object_type='TABLE' and to_char(CREATED,'yyyy-mm-dd')
between v_begintime
and v_endtime order by CREATED desc;
begin
open cur_tablename;
loop
fetch cur_tablename into v_tablename;
exit when cur_tablename%notfound;
execute immediate 'drop table '||v_tablename||'';
end loop;
close cur_tablename;
end sp_droptable;

 

然后,另开一个sql窗口,执行

 begin
SP_DROPTABLE('1900-01-01','2013-12-31');
end;

 

如有问题,请查看浏览器右上角处

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-06

可以使用以下3种方式实现:


1、如果有plsql客户端,则可以使用该用户登录,选中所有表 右键Drop即可。


2、如果有删除用户的权限,则可以写:

drop user user_name cascade;

加了cascade就可以把用户连带的数据全部删掉。


3、如果没有删除用户的权限,则可以执行:

select 'drop table '||table_name||';' from cat where table_type='TABLE'

第2个回答  2013-11-09
可不敢乱来,从你打开的这个开,你看到的应该是系统库的表和视图之类的,你删了这些你数据库就别想用了;如果是新建数据库用户的话,里面默认好像是没什么表的,如果你是使用SQL文件建的,你只需要把这个数据库用户删掉,拷贝里面的建库的那个语句考出来执行下即可,建立的就是一个空的数据库
相似回答