행위

"오라클 PK 생성"의 두 판 사이의 차이

DB CAFE

1번째 줄: 1번째 줄:
 +
= PK 인덱스 생성 =
 +
 +
== 테이블 생성시 지정 ==
 +
<source lang=sql>
 +
SQL> CREATE TABLE TEST1( COL1 NUMBER
 +
                      , COL2 NUMBER
 +
                      , CONSTRAINT PK_TEST1 PRIMARY KEY(COL1)
 +
                      );
 +
Table created.
 +
</source>
 +
 +
== 유니크 인덱스 생성 후 PK로 지정 ==
 +
=== 유니크 인덱스 생성 ===
 +
<source lang=sql>
 +
SQL> CREATE UNIQUE INDEX PK_TEST1 ON TEST1(COL1);
 +
Index created.
 +
</source>
 +
=== PK 인덱스로 변경 ===
 +
<source lang=sql>
 +
SQL> ALTER TABLE TEST1 ADD CONSTRAINTS PK_TEST1 PRIMARY KEY(COL1);
 +
</source>
 +
 
== ALTER TABLE .. ADD CONSTRAINT 명령 ==
 
== ALTER TABLE .. ADD CONSTRAINT 명령 ==
 
* 제약 조건명 PK_TEST_TABLE로 하고 해당 제약 조건을 PK 컬럼 지정
 
* 제약 조건명 PK_TEST_TABLE로 하고 해당 제약 조건을 PK 컬럼 지정
11번째 줄: 33번째 줄:
 
ALTER TABLE TEST_TABLE  
 
ALTER TABLE TEST_TABLE  
 
         ADD PRIMARY KEY (USER_ID,,);
 
         ADD PRIMARY KEY (USER_ID,,);
</SOURCE>
 
 
== (UNIQUE) 인덱스 만들고 PK로 지정 ==
 
1) 인덱스 생성
 
<SOURCE LANG=SQL>
 
CREATE (UNIQUE) INDEX PK_TEST_TABLE
 
    ON TEST_TABLE (USER_ID,,);
 
</SOURCE>
 
2-1) ADD CONSTRAINT 명령
 
<SOURCE LANG=SQL>
 
ALTER TABLE TEST_TABLE
 
        ADD CONSTRAINT PK_TEST_TABLE
 
    PRIMARY KEY (USER_ID)
 
      USING INDEX;
 
</SOURCE>
 
 
2-2) ADD PRIMARY KEY 명령
 
<SOURCE LANG=SQL>
 
ALTER TABLE TEST_TABLE
 
        ADD PRIMARY KEY (USER_ID)
 
      USING INDEX;
 
 
</SOURCE>
 
</SOURCE>
  
37번째 줄: 38번째 줄:
 
-- 해당 컬럼으로 미리 만들어 둔 인덱스가 없는 경우 : CONSTRAINT 명칭과 동일한 이름으로 인덱스 자동 생성 됨
 
-- 해당 컬럼으로 미리 만들어 둔 인덱스가 없는 경우 : CONSTRAINT 명칭과 동일한 이름으로 인덱스 자동 생성 됨
 
-- 해당 컬럼으로 미리 만들어 둔 인덱스가 있는 경우 : 해당 인덱스를 이용함, 별도 인덱스 생성 안함
 
-- 해당 컬럼으로 미리 만들어 둔 인덱스가 있는 경우 : 해당 인덱스를 이용함, 별도 인덱스 생성 안함
 +
 
[[Category:oracle]]
 
[[Category:oracle]]

2020년 1월 29일 (수) 08:03 판

thumb_up 추천메뉴 바로가기


1 PK 인덱스 생성[편집]

1.1 테이블 생성시 지정[편집]

SQL> CREATE TABLE TEST1( COL1 NUMBER
                       , COL2 NUMBER
                       , CONSTRAINT PK_TEST1 PRIMARY KEY(COL1)
                       );
Table created.

1.2 유니크 인덱스 생성 후 PK로 지정[편집]

1.2.1 유니크 인덱스 생성[편집]

SQL> CREATE UNIQUE INDEX PK_TEST1 ON TEST1(COL1);
Index created.

1.2.2 PK 인덱스로 변경[편집]

SQL> ALTER TABLE TEST1 ADD CONSTRAINTS PK_TEST1 PRIMARY KEY(COL1);

1.3 ALTER TABLE .. ADD CONSTRAINT 명령[편집]

  • 제약 조건명 PK_TEST_TABLE로 하고 해당 제약 조건을 PK 컬럼 지정
ALTER TABLE TEST_TABLE 
        ADD CONSTRAINT PK_TEST_TABLE PRIMARY KEY (USER_ID,,);

1.4 ALTER TABLE .. ADD PRIMARY KEY 명령[편집]

  • PK명은 SYS***으로 생성됨
ALTER TABLE TEST_TABLE 
        ADD PRIMARY KEY (USER_ID,,);

-- USING INDEX 사용에 따른 인덱스 생성 여부 -- 해당 컬럼으로 미리 만들어 둔 인덱스가 없는 경우 : CONSTRAINT 명칭과 동일한 이름으로 인덱스 자동 생성 됨 -- 해당 컬럼으로 미리 만들어 둔 인덱스가 있는 경우 : 해당 인덱스를 이용함, 별도 인덱스 생성 안함