데이터베이스/SQL

SQL 데이터 삭제하기 DELETE, TRUNCATE, DROP

ADELA_J 2024. 1. 15. 22:56

<DELETE, TRUNCATE, DROP>

- 데이터를 삭제하는 법

 

▼ 사원 테이블에서 SCOTT 사원의 행 데이터를 삭제하기

 

<TRUNCATE> 

- 모든 데이터를 한 번에 삭제

- 삭제 후에는 취소가 불가능하기 때문에 delete 보다 삭제되는 속도가 빠름

- 데이터 모두 지우고 테이블만 남겨주는것이 요것

 

<DROP>

- 테이블 전체를 삭제하는 명령어

- 삭제 후 취소(ROLLBACK)ㅇ이 불가능함.

- 하지만 FLASHBACK으로 테이블을 복구할 수는 있음.

 

** DELETE는 DML (Data Manipulation Language)이고 

TRUCATE/DROP은 DDL(Data Definition Language)문임.

 

** DDL문은 수행되면서 암시적인 COMMIT이 발생됨. 

 > create, alter, arop, truncate, rename이 대표적인 DDL문

 

**데이터를 삭제하는 명령어 3가지 정리

  DELETE TRUNCATE DROP
데이터 삭제 삭제 삭제
저장 공간 남김 삭제 삭제
저장 구조 남김 남김 삭제
취소 여부 가능 불가능 불가능
플래시백 여부 가능 불가능 가능