오라클에서 생성된 PRIMARY KEY를 DROP 할 때

ALTER TABLE TABLE_NAME
DROP CONSTRAINT TABLE_NAME_PK; -- TABLE_NAME_PK는 TABLE의 INDEX NAME

DROP INDEX TABLE_NAME_PK;

다시 PRIMARY KEY를 CREATE 할 때, TABLESPACE는 잡지 않아도 됨(자동할당)

CREATE UNIQUE INDEX TABLE_NAME_PK ON TABLE_NAME
(COLUMN1, COLUMN2)
LOGGING
TABLESPACE TABLESPACE_NAME
PCTFREE    10
INITRANS   2
MAXTRANS   255
STORAGE    (
            INITIAL          12M
            NEXT             1M
            MINEXTENTS       1
            MAXEXTENTS       UNLIMITED
            PCTINCREASE      0
            BUFFER_POOL      DEFAULT
           )
NOPARALLEL;

ALTER TABLE TABLE_NAME ADD (
  CONSTRAINT TABLE_NAME_PK
 PRIMARY KEY
 (COLUMN1, COLUMN2)
    USING INDEX
    TABLESPACE INDEX_TABLESPACE_NAME
    PCTFREE    10
    INITRANS   2
    MAXTRANS   255
    STORAGE    (
                INITIAL          12M
                NEXT             1M
                MINEXTENTS       1
                MAXEXTENTS       UNLIMITED
                PCTINCREASE      0
               ) DISABLE);

Posted by 란수
,