[TIBERO] Constraint , index 제거

반응형
TEST Create script
1. 생성구문에 pk를 명시한 경우

CREATE TABLE tibero.persons (
    ID int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int,
    CONSTRAINT persons_pk_id PRIMARY KEY (ID) using index tablespace usr
);

2. 생성구문에 pk를 명시하지 않고, index를 따로 만든 후, pk를 생성한 경우

CREATE TABLE tibero.persons (
    ID int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int    
);

create index tibero.persons_pk_id on tibero.persons(id);

alter table tibero.persons add(
constraints persons_pk_id primary key(id)
);

# Index 조회

select * from dba_indexes
where owner = 'TIBERO' and table_name = 'PERSONS';

 

# Constraint  조회

select * from dba_constraints
where owner = 'TIBERO' and table_name = 'PERSONS';

 

1. index drop

drop index TIBERO.PERSION_PK_ID;
--> 제약조건이 걸려있어서 drop이 안됨

 

2. PK drop

ALTER TABLE TIBERO.persons DROP PRIMARY KEY;
--> index 따로 생성 후 해당 인덱스를 primary key와 연결한 경우에는 index가 살아있음, 아닌경우 둘다 삭제됨

ALTER TABLE TIBERO.persons DROP PRIMARY KEY DROP INDEX;
--> index 따로 생성 후 해당 인덱스를 primary key와 연결한 경우에는 index가 살아있음, 아닌 경우 둘다 삭제됨

 

3. PK 제약조건 이름 변경

ALTER TABLE tibero.persons RENAME CONSTRAINT persons_pk_id TO persons_pk_id_BAK;
반응형