테이블명 변경: RENAME {변경전이름} TO {변경후이름};
인덱스명 변경: ALTER INDEX {변경전이름} RENAME TO {변경후이름};
1.변경하고자 하는 COLUMN으로 Unique Index를 생성한다.
쿼리 -
CREATE UNIQUE INDEX PK명 ON TABLE명(COLUMN명) TABLESPACE TABLESPACE명;
예제(테이블스페이스는 사용 안함) -
CREATE UNIQUE INDEX PK_FTA_PO_LEDGER ON FTA_PO_LEDGER(COMPANY_CODE, PROJECT_CODE, FTA_CODE, ITEM_CODE);
2.해당하는 PK를 삭제한다
ALTER TABLE RECRUIT_APP DROP PRIMARY KEY
쿼리 -
ALTER TABLE TABLE명 DROP CONSTRAINT PK명;
예제(테이블스페이스는 사용 안함) -
ALTER TABLE FTA_PO_LEDGER DROP CONSTRAINT FTA_PO_LEDGER_PK;
3.PK에 속성을 추가한다.
쿼리 -
ALTER TABLE TABLE명 ADD CONSTRAINT PK명 PRIMARY KEY(COLUMN명);
예제 -
ALTER TABLE FTA_PO_LEDGER ADD CONSTRAINT PK_FTA_PO_LEDGER PRIMARY KEY(COMPANY_CODE, PROJECT_CODE, FTA_CODE, ITEM_CODE);
select * from USER_IND_EXPRESSIONS where table_name = 'COUNSELLING'; -- 인덱스검색
[출처] 테이블의 PK 변경하기 (개발자로 살아남기) |작성자 정우아빠
'Database' 카테고리의 다른 글
[Toad] Rebuild Table을 이용한 테이블 컬럼 위치 변경 (0) | 2012.04.25 |
---|---|
[ORACLE]Table Lock 걸렸을 때 처리 (ORA-00054) (0) | 2012.04.19 |
[MSSQL]LPAD,RPAD,프로시저 (0) | 2012.03.20 |
쿼리 깔끔하게 정리하기 (0) | 2012.03.14 |
[ORACLE]테이블의 컬럼을 변경한 유저를 아는 방법 (0) | 2012.03.14 |