AI 개발 공부 공간

AI, 머신러닝, 딥러닝, Python & PyTorch, 실전 프로젝트

SQLD/2과목 : SQL 기본 및 활용

2.22 DROP, TRUNCATE, DELETE

qordnswnd123 2025. 7. 7. 11:05

2.22 DROP, TRUNCATE, DELETE

🔸 1. DELETE – “조건 걸어서 지우기”

  • 무엇을 하냐?
    → 테이블 안에 있는 데이터만 삭제
    → "조건" 걸 수 있어서 필요한 것만 삭제 가능
  • 예시
    DELETE FROM 주문 WHERE 고객번호 = 3;
    ➤ 고객번호가 3인 주문만 지움
  • 특징
    • 테이블 구조(형태)는 유지
    • 롤백(되돌리기) 가능!
    • 트랜잭션 필요 (커밋해야 적용됨)
    • 느릴 수 있음 (조건 확인 필요하니까)

 

🔸 2. TRUNCATE – “싹 지우기 (형태만 남기고)”

  • 무엇을 하냐?
    → 테이블 안 전체 데이터 삭제
    → 구조(테이블 뼈대)는 유지
  • 예시
    TRUNCATE TABLE 주문;
    ➤ 주문 테이블의 모든 데이터 삭제
  • 특징
    • 매우 빠름
    • 조건 지정 불가능 (전부 삭제만 가능)
    • 롤백 ❌ (복구 안 됨, 실수 조심!)
    • 디스크 공간도 정리됨 (깔끔하게 비움)
    • 자동 커밋됨 (되돌릴 수 없음)

 

🔸 3. DROP – “테이블 자체를 없애버리기”

  • 무엇을 하냐?
    → 테이블 + 안에 있는 데이터 전부 삭제
    → 즉, 그 테이블 자체가 사라짐
  • 예시
    DROP TABLE 주문;
    ➤ ‘주문’이라는 테이블 자체가 없어짐
  • 특징
    • 스키마(형태)까지 사라짐
    • 롤백 ❌ (되돌릴 수 없음)
    • 디스크 공간도 회수됨
    • 아주 빠르고 완전한 삭제

 

 

 

💡 시험에 자주 나오는 핵심 포인트

  • TRUNCATE와 DELETE의 가장 큰 차이?
    롤백 가능 여부 (TRUNCATE는 복구 불가!)
  • DROP 하면 뭐가 사라짐?
    데이터 + 테이블 구조 전부 사라짐
  • 조건 걸 수 있는 건?
    ➤ 오직 DELETE만 가능
  • 속도 빠른 순?
    ➤ DROP > TRUNCATE > DELETE

 

✅ 기억 꿀팁

DEL은 조심해서 골라서 삭제!
TRUNC은 전부 다 지우지만 **틀(스키마)**은 남겨!
DROP은 아예 박살, 다시 못 써!”

'SQLD > 2과목 : SQL 기본 및 활용' 카테고리의 다른 글

2.21 참조 무결성 제약조건  (0) 2025.07.07
2.20 트랜잭션  (0) 2025.07.07
2.19 복합 쿼리 예제 4  (0) 2025.07.04
2.18 복합 쿼리 예제 3  (0) 2025.07.04
2.17 정규 표현식  (0) 2025.07.04