내맘대로긍정이 알려주는
Oracle 23ai 신기능
무료 세미나 발표자료
OS환경 : Oracle Linux6.8(64bit)
DB 환경 : Oracle Database 11.2.0.4
방법 : Oracle Primary Keys 설정
오라클 primary key 란?
테이블의 유일성을 보장하기 위한 제약조건이고 하나의 테이블에는 하나의 기본키만 가질 수 있음
기본키의 일부인 컬럼에는 널(NULL)값을 포함 할 수 없음
Oracle에서 기본키는 32개 이상의 컬럼을 포함 할 수 없음
기본 키는 CREATE TABLE 문 또는 ALTER TABLE 문으로 만들수 있음
1. PK 생성 - CREATE TABLE 문 사용
CREATE TABLE 문으로 Oracle에서 기본 키를 생성할 수 있음
Oracle / PLSQL에서 CREATE TABLE 문을 사용하여 기본 키를 만드는 구문
1 2 3 4 5 6 7 8 | CREATE TABLE table_name ( column1 datatype null/not null, column2 datatype null/not null, ... CONSTRAINT constraint_name PRIMARY KEY (column1, column2, ... column_n) ); |
예제
1 2 3 4 5 6 7 | CREATE TABLE supplier ( supplier_id numeric(10) not null, supplier_name varchar2(50) not null, contact_name varchar2(50), CONSTRAINT supplier_pk PRIMARY KEY (supplier_id) ); |
이 예제에서는 supplier_pk라는 기본 키를 만들었고 supplier_id 단일 컬럼으로 구성됨
아래 예제와 같이 하나 이상의 컬럼이 있는 기본 키를 만들 수도 있음(다중 컬럼)
1 2 3 4 5 6 7 | CREATE TABLE supplier ( supplier_id numeric(10) not null, supplier_name varchar2(50) not null, contact_name varchar2(50), CONSTRAINT supplier_pk PRIMARY KEY (supplier_id, supplier_name) ); |
2. PK 생성 - ALTER TABLE 문 사용
ALTER TABLE 문으로 Oracle에서 기본 키를 생성할 수 있음
Oracle / PLSQL에서 ALTER TABLE 문을 사용하여 기본 키를 만드는 구문
1 2 | ALTER TABLE table_name ADD CONSTRAINT constraint_name PRIMARY KEY (column1, column2, ... column_n); |
예제
1 2 | ALTER TABLE supplier ADD CONSTRAINT supplier_pk PRIMARY KEY (supplier_id); |
이 예제에서는 supplier_pk라는 기본 키를 만들었고 supplier_id라는 단일 컬럼로 구성됨
아래 예제와 같이 하나 이상의 컬럼이 있는 기본 키를 만들 수도 있음
1 2 | ALTER TABLE supplier ADD CONSTRAINT supplier_pk PRIMARY KEY (supplier_id, supplier_name); |
3. PK 삭제
ALTER TABLE 문을 사용하여 Oracle에서 기본 키를 삭제할 수 있음
Oracle / PLSQL에서 ALTER TABLE 문을 사용하여 기본 키를 삭제하는 구문
1 2 | ALTER TABLE table_name DROP CONSTRAINT constraint_name; |
예제
1 2 | ALTER TABLE supplier DROP CONSTRAINT supplier_pk; |
이 예제에서는 supplier_pk라는 기본 키를 삭제함
4. PK 비활성화
ALTER TABLE 문을 사용하여 Oracle에서 기본 키를 비활성화 할 수 있음
Oracle / PLSQL에서 ALTER TABLE 문을 사용하여 기본 키를 비활성화하는 구문
1 2 | ALTER TABLE table_name DISABLE CONSTRAINT constraint_name; |
예제
1 2 | ALTER TABLE supplier DISABLE CONSTRAINT supplier_pk; |
이 예제에서는 supplier_pk라는 기본 키를 사용하지 않도록 설정함
5. PK 활성화
ALTER TABLE 문을 사용하여 Oracle에서 기본 키를 사용할 수 있음
Oracle / PLSQL에서 ALTER TABLE 문을 사용하여 기본 키를 활성화하는 구문
1 2 | ALTER TABLE table_name ENABLE CONSTRAINT constraint_name; |
예제
1 2 | ALTER TABLE supplier ENABLE CONSTRAINT supplier_pk; |
이 예제에서는 supplier_pk라는 기본 키를 사용하도록 설정함
참조 : https://www.techonthenet.com/oracle/primary_keys.php
'ORACLE > Admin' 카테고리의 다른 글
오라클 테이블 compress 정리(10g, 11g, 12c, 18c) (4) | 2018.12.17 |
---|---|
오라클 Hot backup시 변경이 발생한다면? (4) | 2018.12.17 |
오라클 create table 구문 옵션별 설명 (0) | 2018.12.12 |
오라클 sqlplus startup시 로깅 방법 (0) | 2018.12.11 |
오라클 클러스터란? (0) | 2018.12.11 |