본문 바로가기
IT/DB

[ORACLE] 오라클 DDL ALTER 문(컬럼명/타입 변경,코멘트 추가,디폴트 추가,CLOB 변경)

by 스터딩아재 2021. 8. 20.
반응형

 

 

* 컬럼 추가/삭제, 데이터 타입 변경, 코멘트 변경

* ALTER문 일하다 보면 자주 쓰는데 정말 기억 안 나고 매번 찾기 귀찮다. 모아 두자.

 

1. 컬럼 추가/수정/삭제

-- 추가 
ALTER TABLE 테이블명 ADD(컬럼명 VARCHAR2(100));

-- 수정(데이터 없을 시, 데이터 있을 경우는 아래 4_2번 SQL 참고)
-- 디폴트값 N
ALTER TABLE 테이블명 MODIFY(컬럼명 VARCHAR2(100) DEFAULT 'N');

-- 삭제
ALTER TABLE 테이블명 DROP COLUMN 컬럼명;

 

2. 컬럼 이름 변경

ALTER TABLE 테이블명 RENAME COLUMN 기존컬럼명 TO 변경컬럼명;

 

3. 테이블/컬럼 코멘트 수정

-- 테이블 코멘트 수정
COMMENT ON TABLE 테이블명 IS '코멘트 내용';

-- 컬럼 코멘트 수정
COMMENT ON COLUMN 테이블명.컬럼명 IS '코멘트 내용';

 

 

4. 컬럼 타입 변경

1) 기존 데이터 없을 시

ALTER TABLE 테이블명 MODIFY 컬럼명 데이터타입

ALTER TABLE TB_001 MODIFY COL1 VARCHAR2(100)

 

 

2) CLOB 혹은 기존 데이터 존재 시

* 데이터가 있으면 위 ALTER 문이 안 먹는다. 

* VARCHAR2를 CLOB으로 변경하려면 컬럼을 추가하고, COPY 해서 지우는 방법을 해야 한다.

 

-- 새로운 컬럼 생성
ALTER TABLE 테이블명 ADD 임시컬럼명 데이터타입;

-- 데이터 COPY
UPDATE 테이블명 SET 임시컬럼명 = 기존컬럼명;

-- 기존 컬럼 삭제
ALTER TABLE 테이블명 DROP COLUMN 컬럼명;

-- RENAME
ALTER TABLE 테이블명 RENAME COLUMN 임시컬럼명 TO 기존컬럼명;

 

 

그리드형

댓글