扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
你好,先把服务关闭了,这样其他人就不能使用了,于是你就可以删除索引了。
成都创新互联公司于2013年成立,是专业互联网技术服务公司,拥有项目成都网站设计、成都网站制作网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元灵川做网站,已为上家服务,为灵川各地企业和个人服务,联系电话:18982081108
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。
一 查看索引名select * from user_indexes;二 删除索引drop index index_name;
Oracle sqlplus代码如下:
set serverout on;
declare
cnt number(10):=0;
begin
select count(*) into cnt from all_indexes where index_name='TEST_INDEX' and table_name='SYS_TEST';
if cnt=1 then
Execute immediate'drop index test_index';
Execute immediate'create index test_index on sys_test(aaa) indextype is ctxsys.context';
dbms_output.PUT_LINE('索引已经删除并重建');
else
dbms_output.PUT_LINE('索引不存在');
end if;
end;
1、打开Navicat,右击oracle数据库,然后点击【打开连接】。
2、点击【其它】,然后点击【索引】,此时显示oracle数据库中所有的索引。
3、右击要删除的索引,然后选择【设计索引】。
4、核实索引内容,以免错删。
5、右击要删除的索引,然后选择【删除索引】。
6、最后勾选【确定】,然后点击【删除】。
7、此时该索引就删除了。
删除掉table_name中的索引index_name的SQL语句如下:
DROP INDEX index_name ON talbe_name
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流