您的位置:首页 > 数据库 > Oracle

ORACLE删除当前用户下所有的表的方法

2015-12-02 11:28 477 查看


imp userid="""sys/c#Sys123 as sysdba""" file=D:\DB\C##UserMdb20151202.dmp fromuser=C##mgHotelDB touser=C##mgHotelDB

select instance_name from v$instance;

exp userid=C##mgHotelDB/C##mgHotelDB123  file=d:\DB\C##mgHotelDB20151202s.dmp log=d:\DB\C##mgHotelDB20151202s.log owner=C##mgHotelDB

1、如果有删除用户的权限,则可以:
drop user user_name cascade;
加了cascade就可以把用户连带的数据全部删掉。
删除后再创建该用户。

--创建管理员用户

create user 用户名 identified by 密码 default tablespace space_data(表空间名称) temporary tablespace space_temp(临时表空间名称);

--授权

grant connect,dba to 用户名;

--修改限额

ALTER USER "用户名" QUOTA UNLIMITED ON SPACE_DATA(表空间名称);
--查看所有用户对象

select uo.object_name,uo.object_type from user_objects uo where uo.object_type<>'LOB' order by uo.object_type desc
 
2、如果没有删除用户的权限,则可以执行:
select 'drop table '||table_name||';' 

from cat 

where table_type='TABLE'
将会输出一批删除表的sql语句,这些SQL语句执行一下就可以了。(需要有drop table的权限)

imp userid="""sys/c#Sys123 as sysdba""" file=D:\DB\C##UserMdb20151202.dmp fromuser=C##mgHotelDB touser=C##mgHotelDB

select instance_name from v$instance;

exp userid=C##mgHotelDB/C##mgHotelDB123  file=d:\DB\C##mgHotelDB20151202s.dmp log=d:\DB\C##mgHotelDB20151202s.log owner=C##mgHotelDB
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  oracle