일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 데이터베이스
- Math.min
- Integer
- toLowerCase
- 참조형
- substring
- programmers
- 프로그래머스
- 코딩테스트
- StringBuffer
- 자바
- 문자열
- PARSEINT
- 프로시저
- Java
- 1레벨
- 짝수
- 오라클
- oracle
- 1lv
- string
- Linux
- 1level
- 코테
- 디비
- 알고리즘
- Math.max
- 배열
- 1단계
- SQL
- Today
- Total
웹 프로그래밍
컬럼 추가, 삭제, 수정, 변경(ALTER) - Oracle 본문
아래 예제는 위 사진의 테이블을 사용했습니다.
▶ 테이블에 컬럼을 추가하는 방법(ADD)
1. 문법
ALTER TABLE 테이블명 ADD 컬럼명 데이터타입;
ALTER TABLE 테이블명 ADD 컬럼명 데이터타입 DEFAULT ''; // DEFAULT는 생략 가능
ALTER TABLE 테이블명 ADD 컬럼명 데이터타입 DEFAULT '' NOT NULL; // NOT NULL은 생략 가능
2. 예제
1) ALTER TABLE TB_TEST ADD COL_TEST VARCHAR2(10);
- 컬럼이 추가되면서 기존 데이터는 default로 null 값이 들어간다.
2) ALTER TABLE TB_TEST ADD COL_TEST VARCHAR2(10) DEFAULT 'test';
- 컬럼이 추가되면서 기존 데이터는 default로 설정한 default 값이 들어간다.
3) ALTER TABLE TB_TEST ADD COL_TEST VARCHAR2(10) DEFAULT 'test' NOT NULL;
- 기존 데이터는 2번과 동일하지만 컬럼 추가 후 새롭게 데이터가 추가될 때 null이 들어갈 수 없다.
4) ALTER TABLE TB_TEST ADD COL_TEST VARCHAR2(10) NOT NULL;
- default를 설정하지 않으면 기존 데이터는 null 값이 들어가는데 NOT NULL 옵션을 사용했을 경우
테이블에 데이터가 없으면 상관없지만 1개 이상이라도 있을 경우 에러가 발생한다.
▶ 테이블에 컬럼을 삭제하는 방법(DROP)
1. 문법
ALTER TABLE 테이블명 DROP COLUMN 컬럼명;
2. 예제
1) ALTER TABLE TB_TEST DROP COLUMN COL_NUMBER;
- 기존에 NULL 또는 임의의 값이 들어있어도 해당 컬럼을 삭제한다.
▶ 테이블에 컬럼을 수정하는 방법(MODIFY)
1. 문법
ALTER TABLE 테이블명 MODIFY(컬럼명 데이터타입);
2. 예제
1) ALTER TABLE TB_TEST MODIFY(COL_STRING VARCHAR2(20));
- 기존 데이터 보다 큰 경우 상관없지만 1개의 데이터라도 작은 경우가 있다면 에러가 발생한다.
2) ALTER TABLE TB_TEST MODIFY(COL_STRING NUMBER(10));
- 기존에 데이터가 없으면 데이터 타입이 변경되지만 데이터가 1개 이상일 경우 에러가 발생한다.
▶ 테이블에 컬럼을 수정하는 방법(RENAME)
1. 문법
ALTER TABLE 테이블명 RENAME COLUMN 컬럼명 TO 변경할컬럼명;
2. 예제
1) ALTER TABLE TB_TEST RENAME COLUMN COL_STRING TO COL_STRING2;
'DB(SQL) > oracle' 카테고리의 다른 글
OVER(), PARTITION BY - Oracle (0) | 2024.05.28 |
---|---|
상위 데이터 조회(Rownum, Top) - Oracle, Mssql (0) | 2023.02.23 |
시퀀스(SEQUENCE) - Oracle (0) | 2023.02.05 |
트리거(TRIGGER) - ORACLE DB (0) | 2021.09.28 |
프로시저(Procedure), 함수 - ORACLE DB (0) | 2021.09.28 |