◆ DML(Data Manipulation Language)
- SELECT
- INSERT
- UPDATE
- DELETE
- MERGE
◆ DDL(Data Definition Language)
- CREATE
- ALTER
- DROP
- TRUNCATE
◆ DCL(Data Control Language)
- GRANT
- REVOKE
◆ TCL(Transaction Control Language)
- COMMIT
- ROLLBACK
delete와 truncate, drop의 공통점은 세개 모두 삭제기능이라는 점이다.
그러나 세개를 수행 후의 사이즈는 각기 다르다.
Member테이블
위와 같은 테이블이 있다고 가정하자.
위 테이블에 delete를 하면 내가 원하는 부분만 where조건을 주어 지울 수 있다.
delete수행 후에 테이블의 총 사이즈를 재면 40K로 나온다.
즉, delete는 데이터가 지워져도 실제 할당된 공간은 반환하지 않는다는 것을 알 수 있다.
truncate는 테이블의 데이터를 모두 지워버린다. delete와 달리 골라서 지울 수 없다.
하지만 테이블의 구조만은 남아있다.
truncate수행 후에 테이블의 총 사이즈를 재면 10K로 나온다.
즉, truncate는 데이터가 지워지면 그만큼의 비워진 공간을 OS에 반환한다는 것을 알 수 있다.
drop은 아예 테이블의 존재를 지워버리는 것이다.
'오라클 > SQL' 카테고리의 다른 글
[SQL] TCL(Transaction Control Language) (0) | 2010.08.19 |
---|---|
[SQL] DML(Data Manipulation Language) (0) | 2010.08.19 |
[SQL] Sub Query (0) | 2010.08.18 |
[SQL] ANSI Join (0) | 2010.08.18 |
[SQL] 오라클 전용 Join (0) | 2010.08.17 |