[MYSQL] 데이터 삭제 DELETE, DROP, TRUNCATE

2024. 11. 19. 18:36·DB | SQL

DELETE, DROP, TRUNCATE는 모두 데이터베이스에서 데이터를 삭제하는 명령어지만, 각각의 목적과 동작 방식이 다르다.

 


DELETE, DROP, TRUNCATE 특징

1. DELETE

  • 테이블에서 특정 조건에 맞는 데이터를 삭제하는 데 사용된다.
  • 삭제한 데이터는 트랜잭션 로그에 기록되므로 롤백이 가능하다.
  • WHERE 절을 사용하여 특정 조건에 맞는 데이터만 삭제할 수 있다.
  • 테이블 구조나 데이터 정의는 영향을 받지 않는다.
  • 삭제 후에도 테이블에 데이터가 남아 있을 수 있다.

 

2. DROP

  • 테이블, 데이터베이스, 또는 다른 객체를 삭제하는 명령어다.
  • 이 명령어를 실행하면 해당 테이블이나 객체 자체가 삭제되고, 복구할 수 없다.
  • 테이블의 모든 데이터와 구조가 완전히 삭제되며, 관련된 모든 인덱스와 제약 조건도 함께 삭제된다.

 

3. TRUNCATE

  • 테이블의 모든 데이터를 삭제하는 명령어로, DELETE와 유사하지만 더 빠르다.
  • 데이터를 하나씩 삭제하지 않고, 테이블을 초기화하는 방식으로 동작한다.
  • 트랜잭션 로그에 적게 기록되므로 성능이 더 좋지만, 롤백이 불가능하며, 삭제된 데이터를 복구할 수 없다.
  • 테이블의 구조는 그대로 유지된다.

 


DELETE 기본 형식 (DELETE 사용 시 조건이 없으면 모든 행이 삭제됨)

DELETE FROM 테이블_이름 WHERE 조건;

 

 

 

DROP 기본 형식 (테이블 자체가 삭제됨)

DROP TABLE 테이블_이름;

 

 

TRUNCATE 기본 형식 (테이블은 남기고 모든 데이터 삭제)

TRUNCATE TABLE 테이블_이름;

'DB | SQL' 카테고리의 다른 글

[MySQL] 날짜 포맷 사용 / DATE_FORMAT  (0) 2025.10.19
Programmers / 카테고리 별 상품 개수 구하기 / MySQL  (0) 2025.10.13
[MongoDB] 명령어 모음  (0) 2025.04.11
[DB] 데이터 베이스 기초  (1) 2024.10.07
[MySQL] 명령어 정리  (0) 2024.10.03
'DB | SQL' 카테고리의 다른 글
  • Programmers / 카테고리 별 상품 개수 구하기 / MySQL
  • [MongoDB] 명령어 모음
  • [DB] 데이터 베이스 기초
  • [MySQL] 명령어 정리
seulll
seulll
개인 공부 블로그입니다.
  • seulll
    seulll
    seulll
  • 전체
    오늘
    어제
  • Seuli's Github
    • 분류 전체보기 (405) N
      • Coding Test (262)
        • Programmers (165)
        • Baekjoon (95)
      • Data Structures & Algorithm.. (15)
      • Development & Projects (20)
        • Python (5)
        • Java (15)
        • Android (5)
        • AI (6)
        • Unity (3)
        • API (5)
      • OS (5)
      • DB | SQL (10) N
      • Network (8)
      • Data Analysis (14)
      • Study | etc (22)
  • 블로그 메뉴

    • 홈
    • 태그
    • 글쓰기
    • 설정
  • 공지사항

  • 인기 글

  • 태그

    오블완
    카카오맵
    2 x n 타일링
    야근 지수
    코딩테스트
    백엔드
    Python
    프로그래머스
    kakao map api
    파이썬
    백엔드 개발자 역량
    confusion matrix
    백엔드 개발자
    모델 성능 평가
    카카오맵 api
    API
    데이터분석
    바다코끼리
    Boxplot
    프렌즈4블록
    티스토리챌린지
    asterisk
    대입 표현식
    solving environment
    웹크롤링
    오차행렬
    그리디 알고리즘
    Greedy
    train_test_split
    박스플롯
  • 최근 댓글

  • hELLO· Designed By정상우.v4.10.0
seulll
[MYSQL] 데이터 삭제 DELETE, DROP, TRUNCATE
상단으로

티스토리툴바