删除索引主键约束引起ORA-02429错误的解决方法

删除索引主键约束引起ORA-02429错误的解决方法

ID:38222001

大小:32.50 KB

页数:4页

时间:2019-06-07

删除索引主键约束引起ORA-02429错误的解决方法_第1页
删除索引主键约束引起ORA-02429错误的解决方法_第2页
删除索引主键约束引起ORA-02429错误的解决方法_第3页
删除索引主键约束引起ORA-02429错误的解决方法_第4页
资源描述:

《删除索引主键约束引起ORA-02429错误的解决方法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、删除索引主键约束引起ORA-02429错误的解决方法2008-05-2915:46dropindex时出现如下错误:SQL>dropindexoos_index;dropindexoos_index*ERRORatline1:ORA-02429:cannotdropindexusedforenforcementofunique/primarykey我们知道当创建Primarykey和unique约束时,如果在该key上不存在索引,则Oracle会自动创建对应的unique索引,而当你要删除该索引时,必须先

2、Disable或Drop该约束。看下面的例子:SQL>CREATETABLEemployees2(3empnoNUMBER(6)PRIMARYKEY,4nameVARCHAR2(30),5dept_noNUMBER(2)6);Tablecreated.SQL>selectindex_name,owner,table_NAMEfromall_indexeswhereowner=’SFA’ANDtable_name=’EMPLOYEES’;INDEX_NAMEOWNERTABLE_NAME———————-——

3、————-—————–SYS_C007594SFAEMPLOYEESSQL>SELECTCONSTRAINT_NAME,CONSTRAINT_TYPE,TABLE_NAME,INDEX_NAMEFROMALL_CONSTRAINTSWHERETABLE_NAME=’EMPLOYEES’;CONSTRAINT_NAMECTABLE_NAMEINDEX_NAME———————————————————-——————SYS_C007594PEMPLOYEESSYS_C007594SQL>DROPINDEXSYS_

4、C007594;DROPINDEXSYS_C007594*ERRORatline1:ORA-02429:cannotdropindexusedforenforcementofunique/primarykeySQL>ALTERTABLEemployees2MODIFYPRIMARYKEYDISABLE;Tablealtered.SQL>selectindex_name,owner,table_NAMEfromall_indexeswhereowner=’SFA’ANDtable_name=’EMPLOYE

5、ES’;norowsselectedSQL>SELECTCONSTRAINT_NAME,CONSTRAINT_TYPE,TABLE_NAME,INDEX_NAMEFROMALL_CONSTRAINTSWHERETABLE_NAME=’EMPLOYEES’;CONSTRAINT_NAMECTABLE_NAMEINDEX_NAME———————————————————-——————SYS_C007594PEMPLOYEESSYS_C007594SQL>ALTERTABLEemployees2MODIFYPRI

6、MARYKEYENABLE;Tablealtered.SQL>selectindex_name,owner,table_NAMEfromall_indexeswhereowner=’SFA’ANDtable_name=’EMPLOYEES’;INDEX_NAMEOWNERTABLE_NAME——————-—————–————-SYS_C007594SFAEMPLOYEES从上面可以看出,如果创建了PrimaryKey约束,则Oracle会自动帮你创建相应的unique索引。当把PrimaryKey约束Di

7、sable时会自动删除对应的Unique索引,而重新将该约束Enable时,Oracle会重建Unique索引。特别要注意:当DisablePK或Unique约束时,Oracle只会删除对应的Unique索引。可参考Oracle文档中的解释:Ifyouenableauniqueorprimarykeyconstraint,andifnoindexexistsonthekey,Oraclecreatesauniqueindex.Thisindexisdroppediftheconstraintissubse

8、quentlydisabled,andOraclerebuildstheindexeverytimetheconstraintisenabled.Toavoidrebuildingtheindexandeliminateredundantindexes,createnewprimarykeyanduniqueconstraintsinitiallydisabled.Thencreate(oruseexisting)nonuni

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。