如何将oracle库中所有数据删除

 我来答
坐对日光华5966
2017-07-30 · 超过20用户采纳过TA的回答
知道答主
回答量:88
采纳率:0%
帮助的人:21.9万
展开全部
1、你需要明白oracle数据结构
首先数据以表table/索引index/视图view等方式存在,而表/索引/视图存储在表空间,表空间对应硬盘上的文件
2、数据库包含数据字典或默认的一些用户或你创建的用户,这些用户访问这些表或表空间
3、而这都需要存在一个实例instance
4、所以你如果删除数据,需要删除表,然后表空间(或者直接删除表空间连带里面的表)
DROP TABLESPACE DATA_TS1 INCLUDING CONTENTS AND DATAFILES;
5、查询都有哪些表空间
col file_name format a50
select TABLESPACE_NAME,FILE_NAME from dba_data_files order by TABLESPACE_NAME;
查询表空间包含哪些表
col SEGMENT_NAME format a30
select distinct SEGMENT_NAME,TABLESPACE_NAME from dba_segments where TABLESPACE_NAME='DATA_TS1' order by SEGMENT_NAME;
6、生成所有表的drop语句
select 'drop table '||tname||' purge;' from tab order by tname;
7、用dbca删除instance后,数据库就像新安装时候一样干干净净
dbca -silent -deleteDatabase -sourceDB mydb -sysDBAUserName sys -sysDBAPassword db123456
或者用图形界面删除。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式