반응형
데이터베이스에서 테이블의 데이터를 삭제하는 방법은 주로 DELETE와 TRUNCATE 명령어를 사용합니다. 이 두 명령어는 데이터만 삭제하고 테이블의 구조는 유지합니다. 이번 글에서는 각 명령어를 사용하는 방법과 특징에 대해서 알아보겠습니다.
하나의 행을 삭제하는 방법
DELETE 명령어 사용하기
WHERE 절을 사용하여 특정 조건에 맞는 데이터만 삭제할 수 있습니다. 행 단위로 데이터가 삭제됩니다.
기본 형식
DELETE FROM 테이블명 WHERE 조건;
예시
member 테이블에서 name이 '유재석'인 데이터를 삭제하는 방법
DELETE FROM member WHERE name LIKE '유재석';
member 테이블에서 name이 '유'로 시작하는 데이터를 삭제하는 방법
DELETE TABLE member WHERE name LIKE '유%';
반응형
테이블의 모든 데이터를 삭제하는 방법
TRINCATE 명령어 사용하기
where 절을 사용할 수 없으며, 테이블의 모든 행 데이터를 삭제합니다. DELETE보다 빠르게 작동하며, 테이블 구조는 유지됩니다.
TRUNCATE TABLE 테이블명;
DELETE 명령어 사용하기
DELETE FROM 테이블명;
DELETE와 TRUNCATE 차이점
TRUNCATE 명령어
데이터를 정의하는 DDL(Data Definition Language)로 데이터를 정의에 해당하는 명령어로 테이블과 같은 데이터의 구조를 정의하는데 사용합니다.
- 테이블의 모든 데이터를 빠르게 삭제합니다.
- WHERE 절을 사용할 수 없습니다.
- 테이블의 구조와 인덱스는 유지되지만, 데이터만 빠르게 삭제됩니다.
- 트랜젝션 로그를 최소화하여 빠른 성능을 제공합니다.
- 롤백이 불가능한 경우가 많습니다.
DELETE 명령어
데이터를 조작하는 DML(Date Manipulation Language)로 데이터 조작어에 해당하는 명령어로 데이터를 삭제할 때 사용됩니다.
- 특정 조건에 맞는 데이터 또는 모든 데이터를 삭제할 수 있습니다.
- WHERE 절을 사용하여 조건을 지정할 수 있습니다.
- 트랜잭션의 일부로 실행되며, 롤백이 가능합니다.
- 데이터를 삭제할 때마다 테이블의 로그를 기록합니다.
데이터를 삭제할 때는 DELETE와 TRUNCATE 명령어 중 상황에 맞는 명령어를 사용해야 합니다. 특정 조건에 맞는 데이터만 삭제하고 싶다면 DELETE 명령어를 사용할 수 있고, 테이블의 모든 데이터를 삭제하고 싶다면 TRUNCATE 명령어도 사용할 수 있습니다.
반응형
'Web Programing > DB' 카테고리의 다른 글
Oracle Default 기본값 생성, 수정, 삭제 방법 (0) | 2024.04.02 |
---|---|
Oracle default 값 설정, 컬럼에 기본값 설정하기 SQL (0) | 2024.03.30 |
Oracle DB 기본키 Primary Key(PK) 생성 추가 삭제 방법 (0) | 2024.03.25 |
Oracle / DB 테이블의 데이터만 삭제하기 행 삭제 (DELTE, TRUNCATE) (0) | 2024.03.22 |
Oracle 외래 키(Foreign Key, FK) 생성 추가 삭제 SQL (1) | 2024.03.15 |