[Oracle] 테이블 생성, 인덱스 생성, 기본 키 추가하는 방법 예제 자료

오라클 데이터베이스에서 테이블을 생성하고, 유니크 인덱스를 생성하여, 해당 인덱스를 제약조건으로 하여 기본키를 추가하는 예시 자료입니다.

테이블 생성 : CREATE TABLE

테이블 생성, 인덱스 생성, 기본 키 추가하기

테이블을 생성하는 예제입니다.

CREATE TABLE TABLE_NAME (
    COLUMN_NAME VARCHAR2 (100 BYTE)
)
TABLESPACE TABLESPACE_NAME
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (INITIAL 64 M
         NEXT 1 M
         MINEXTENTS 1
         MAXEXTENTS UNLIMITED
         PCTINCREASE 0
         BUFFER_POOL DEFAULT)
LOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;

인덱스 생성 : CREATE UNIQUE INDEX

유니크 인덱스를 생성하는 예제입니다.

CREATE UNIQUE INDEX PK_TABLE_NAME
   ON TABLE_NAME (COLUMN_NAME)
   LOGGING
   TABLESPACE TABLESPACE_NAME
   PCTFREE 10
   INITRANS 2
   MAXTRANS 255
   STORAGE (INITIAL 64 M
            NEXT 1 M
            MINEXTENTS 1
            MAXEXTENTS UNLIMITED
            PCTINCREASE 0
            BUFFER_POOL DEFAULT)
   NOPARALLEL;

기본 키 추가 : PRIMARY KEY

기본 키를 추가하는 예제입니다. 알터 명령어를 사용하여 제약조건으로 유니크 인덱스를 사용하여 기본키를 추가하겠습니다.

ALTER TABLE TABLE_NAME ADD (
  CONSTRAINT CN_TABLE_NAME
  PRIMARY KEY
  (COLUMN_NAME)
  USING INDEX PK_TABLE_NAME);

CREATE TABLE, CREATE UNIQUE INDEX, ADD PRIMARY KEY를 모두 모아놓은 바로가기입니다.

CREATE TABLE TABLE_NAME (
    COLUMN_NAME VARCHAR2 (100 BYTE)
)
TABLESPACE TABLESPACE_NAME
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (INITIAL 64 M
         NEXT 1 M
         MINEXTENTS 1
         MAXEXTENTS UNLIMITED
         PCTINCREASE 0
         BUFFER_POOL DEFAULT)
LOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;

CREATE UNIQUE INDEX PK_TABLE_NAME
   ON TABLE_NAME (COLUMN_NAME)
   LOGGING
   TABLESPACE TABLESPACE_NAME
   PCTFREE 10
   INITRANS 2
   MAXTRANS 255
   STORAGE (INITIAL 64 M
            NEXT 1 M
            MINEXTENTS 1
            MAXEXTENTS UNLIMITED
            PCTINCREASE 0
            BUFFER_POOL DEFAULT)
   NOPARALLEL;

ALTER TABLE TABLE_NAME ADD (
  CONSTRAINT CN_TABLE_NAME
  PRIMARY KEY
  (COLUMN_NAME)
  USING INDEX PK_TABLE_NAME);

댓글