본문 바로가기

자바 웹 개발자가 될거야/DB

[Oracle] 테이블 절단하기 / TRUNCATE문

 

< 테이블 절단하기 >

 

- 테이블 구조는 남겨두고 테이블의 모든 행을 제거하는 기능

- DROP문은 행뿐만 아니라 테이블 구조까지 제거

- DELETE문(where절 없이)과 결과 똑같음

 

 

TRUNCATE TABLE 테이블명;

 

 

① DELETE문과 차이

 

  DELETE TRUNCATE
개념 테이블의 특정 행 삭제 테이블의 모든 행 절단(삭제)
문법 DELETE FROM 테이블명; TRUNCATE TABLE 테이블명;
차이점 DML(데이터 조작어)
저장공간 반납 X
ROLLBACK O
DDL(데이터정의어)
저장공간 반납 O
ROLLBACK X

 

- DELETE : 데이터가 지워져도 데이터가 차지하고 있던 저장공간이 DB로 반납 안됨

- TRUNCATE : 데이터가 지워짐과 동시에 데이터가 차지하고 있던 저장공간이 DB로 반납됨

 

② DROP문과 차이

 

- 컬럼 구조가 남아있냐 아니냐의 차이

- DROP문은 컬럼구조, 데이터 값 모두 없앰, TRUNCATE문은 컬럼구조는 두고 데이터값만 없앰

 

 

drop
truncate