在oracle中如何删除一个用户下所有该用户所建的表?

rt
该用户下只有该用户建的表
用select * from all_tables where owner='user_name';
能搜出该用户下所有的表,怎么前面加上drop不行啊?

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

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

drop user user_name cascade;

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

--创建用户 create user 用户名 profile default identified by 密码 default tablespace 表空间名称 temporary tablespace TEMP account unlock;

--授权
grant dba to ç”¨æˆ·å;
grant connect,resource to ç”¨æˆ·å;

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

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

将得到的结果全部复制粘贴到另一个sql窗口,执行。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-04-06
删除用户的语法是 drop user user_name
如果要删除该用户模式的包含对象(比如表)就要在要删除得用户名后面加上cascade
drop user user_name cascade;本回答被提问者采纳
相似回答