행위

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

DB CAFE

(테이블 생성시 동시 지정)
(ㅓ)
11번째 줄: 11번째 줄:
 
== PK 인덱스 생성 ==
 
== PK 인덱스 생성 ==
 
----
 
----
=== 테이블 생성 시 제약 조건 생성  ===
+
=== (방법1) 테이블 생성 시 제약 조건 생성  ===
 
<source lang=sql>
 
<source lang=sql>
 
SQL> CREATE TABLE TEST1( COL1 NUMBER
 
SQL> CREATE TABLE TEST1( COL1 NUMBER

2021년 3월 12일 (금) 16:11 판

thumb_up 추천메뉴 바로가기


1 PK 인덱스 삭제[편집]

-- 제약 조건 삭제 후 
ALTER TABLE TBA.TB_SM_XXX DROP CONSTRAINT PK_SM_XXX ; 
-- PK 인덱스 삭제 
DROP INDEX TBA.TB_SM_XXX ;



2 PK 인덱스 생성[편집]


2.1 (방법1) 테이블 생성 시 제약 조건 생성[편집]

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

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

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

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

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

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

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

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

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

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

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