十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
一 查看索引名select * from user_indexes;二 删除索引drop index index_name;
密山网站建设公司创新互联建站,密山网站设计制作,有大型网站制作公司丰富经验。已为密山近1000家提供企业网站建设服务。企业网站搭建\外贸网站制作要多少钱,请找那个售后服务好的密山做网站的公司定做!
你好,先把服务关闭了,这样其他人就不能使用了,于是你就可以删除索引了。
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
或者用图形界面删除。
ALTER
TABLE
DROP
PARTITION
用于删除table中某个PARTITION和其中的数据,主要是用于历史数据的删除。如果还想保留数据,就需要合并到另一个partition中。
删除该partition之后,如果再insert该partition范围内的值,要存放在更高的partition中。如果你删除了最大的partition,就会出错。
删除table
partition的同时,删除相应的local
index。即使该index是IU状态。
如果table上有global
index,且该partition不空,drop
partition会使所有的global
index
为IU状态。如果不想REBUIL
INDEX,可以用SQL语句手工删除数据,然后再DROP
PARTITION.
例子:
ALTR
ATBEL
sales
DROP
PARTITION
dec96;
到底是DROP
PARTITION或者是DELETE?
如果GLOBAL
INDEX是最重要的,就应该先DELETE
数据再DROP
PARTITION。
在下面情况下,手工删除数据的代价比DROP
PARTITION要小
-
如果要删除的数据只占整个TABLE的小部分
-
在TABLE中有很多的GLOBAL
INDEX。
在下面情况下,手工删除数据的代价比DROP
PARTITION要大
-
如果要删除的数据占整个TABLE的绝大部分
-
在TABLE中没有很多的GLOBAL
INDEX。
如果在TABLE是父TABLE,有被引用的约束,且PARTITION不空,DROP
PARTITION时出错。
如果要删除有数据的PARTITION,应该先删除引用约束。或者先DELETE,然后再DROP
PARTITION。
如果TABLE只有一个PARTITON,不能DROP
PARTITION,只能DROP
TABLE。
1、打开Navicat,右击oracle数据库,然后点击【打开连接】。
2、点击【其它】,然后点击【索引】,此时显示oracle数据库中所有的索引。
3、右击要删除的索引,然后选择【设计索引】。
4、核实索引内容,以免错删。
5、右击要删除的索引,然后选择【删除索引】。
6、最后勾选【确定】,然后点击【删除】。
7、此时该索引就删除了。
删除掉table_name中的索引index_name的SQL语句如下:
DROP INDEX index_name ON talbe_name