功能简介
在Oracle中,当在alter table时,可以将同一列的索引和约束同时进行删除,语法如下:
为了兼容Oracle数据库,LightDB数据库从23.2版本开始支持DROP CONSTRAINT DROP INDEX
和DROP PRIMARY KEY DROP INDEX
语法,并且仅仅是一个语法糖。
用法
create table drop_index_t1(id number, name varchar2(30));
alter table drop_index_t1 add constraint pk_t1 primary key (id);
\d+ drop_index_t1
alter table drop_index_t1 drop constraint pk_t1 drop index;
\d+ drop_index_t1
alter table drop_index_t1 add constraint pk_t1 primary key (id);
\d+ drop_index_t1
alter table drop_index_t1 drop primary key drop index;
\d+ drop_index_t1
alter table drop_index_t1 add constraint pk_t1 primary key (id);
\d+ drop_index_t1
alter table drop_index_t1 drop constraint pk_t1;
\d+ drop_index_t1
alter table drop_index_t1 add constraint pk_t1 primary key (id);
\d+ drop_index_t1
alter table drop_index_t1 drop primary key;
\d+ drop_index_t1
alter table drop_index_t1 add constraint pk_t1 primary key (id);
\d+ drop_index_t1
alter table drop_index_t1 drop constraint if exists pk_t1 drop index;
\d+ drop_index_t1
alter table drop_index_t1 add constraint pk_t1 primary key (id);
\d+ drop_index_t1
alter table drop_index_t1 drop constraint if exists pk_t1 cascade drop index;
\d+ drop_index_t1
alter table drop_index_t1 add constraint pk_t1 primary key (id);
\d+ drop_index_t1
alter table drop_index_t1 drop primary key cascade drop index;
\d+ drop_index_t1
drop table drop_index_t1;