首 页 行业热点 新车 试驾评测 养车用车 车型库

oracle怎样删除当前用户下所有的表

发布网友

我来回答

6个回答

热心网友

1、在cmd中输入
sqlplus
/
as
sysdba
2、删除用户a,级所有和用户a关联的数据
drop
user
a
cascade;
3、重建用户a
create
user
a
identified
by
密码;
grant
connect,resource
to
a;
4、登入a用户,就ok了
conn
a/密码
---
意思,希望对你有所帮助。

热心网友

高级权限的话,用drop user user_name cascade;把账户和所有数据删除,然后重建账户
普通权限的话,同意
select 'drop table '||table_name||';'
from cat
where table_type='TABLE'
利用cat这个系统视图,将用户所有表生成多行sql语句,如:

1 drop table A;
2 drop table A1;
3 drop table A2;
4 drop table A3;

将这些语句复制进SQLplus,执行即可删除所有表!
虽然弱智,但是比手工删还是快得多!

热心网友

如果表空间中表过多的话,直接删除掉表空间,然后重新建立表空间,并将这个表空间连接到该用户上。不过这个最好用DBA的用户来操作,否则会有权限影响。

我很BS LZ,你内行,内行你怎么了,内行你问啥啊问,存储过程不就是一段语句么。有本事自己弄去啊,没见过你这样问问题的。
你自己有写的那么清楚吗?简单一句话,真T M……内行

热心网友

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

输出后,生成一批删除表的SQL语句,这些SQL语句执行一下就可以了。如果不能执行,说明你没有drop table的权限,那就爱莫能助了!

参考资料:http://zhidao.baidu.com/question/71603956.html

热心网友

你还不如删除用户后重建用户
或写一个del.sql
把表都删除
drop table 表1
drop table .....
....
commit;

热心网友

create or replace procere print(table_name varchar2)
is
begin
select 'drop table '||table_name||';' from cat
where table_type='TABLE'
end;

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com