728x90
반응형
1. DELETE
-WHERE절을 사용하여 테이블에 있는 데이터를 하나하나 선택하여 제거하는 방식
-WHERE절을 사용하지 않고 테이블의 모든 데이터를 삭제하더라도, 내부적으로는 한줄 한줄 제거하는 과정을 거침
-처리속도가 늦고, 퍼포먼스에 좋지 않은 영향을 줄 수 있음
-원하는 데이터만 골라서 삭제할 때에는 DELETE 사용 / 전체 데이터 삭제할 때에는 TRUNCATE 사용
-데이터를 삭제하더라도 데이터가 담겨있던 Storage는 Release 되지 않는다.
-DELETE 된 데이터는 COMMIT 명령어를 사용하기 전이라면 ROLLBACK 명령어를 통해 되돌릴 수 있음
DELETE
FROM dbTable
WHERE 조건;
ROLLBACK;
COMMIT;
2. TRUNCATE
-전체 데이터를 한번에 삭제하는 방식
-최초 생성되었을 당시의 Storage만 남기고 데이터가 담겨있던 Storage는 Release 된다.
-TRUNCATE TABLE을 하면 CREATE TABLE을 한 직후의 상태와 같음
-자동 COMMIT가 되는 명령어이기 때문에 되돌릴 수 없음
TRUNCATE TABLE dbTable;
3. DROP
-테이블 자체를 완전히 날려버리는 방식
-테이블 자체가 모두 지워지며, 해당 테이블에 생성되어 있던 모든 인덱스도 사라짐
-자동 COMMIT이 되는 명령어이기 때문에 되돌릴 수 없음
DROP TABLE dbTable;
728x90
반응형
'SQL' 카테고리의 다른 글
mySQL Connector, Mybatis 설정 (0) | 2023.02.27 |
---|---|
[MySQL] CONCAT & GROUP_CONCAT (0) | 2023.02.13 |
[SQL] INSERT, UPDATE, DELETE (0) | 2022.11.01 |
[MySQL] LEFT JOIN, RIGHT JOIN, INNER JOIN, UNION (0) | 2022.11.01 |
[MyBatis] 동적 태그 (0) | 2022.11.01 |