现在有一个约束,创建为:
CREATE UNIQUE INDEX UI ON TABLE_NAME
(COLUMN_ONE)
LOGGING
TABLESPACE TS_SPACE
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
NEXT 1M
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
NOPARALLEL;
如何删除这个约束?
我用了一些方法都不好用,例如:
alter table table_namedrop drop unique (trans_no)------>ORA-02442: 无法删除不存在的唯一关键字
alter table table_namedrop drop constraint (trans_no)----->ORA-02250: 约束条件名缺失或无效
如何能通过sql删除该约束?
谢谢
------解决思路----------------------
删除索引用如下语句,索引虽然和table关联,但是删除时视其为一个独立的对象。
drop index UI;
------解决思路----------------------
alter table table_name
drop constraint UK_NAME cascade;
------解决思路----------------------
你的这个索引的名字是 UI ,不是 trans_no ;
SQL> create unique index ui on test(a) ;
索引已创建。
SQL> drop index ui ;
索引已删除。