본문 바로가기
데이터베이스

soft delete(논리 삭제) && hard delete(물리 삭제)

by 정구지개발자 2024. 4. 30.
728x90

<hard delete>

물리삭제는 SQL의 DELETE 명령어를 사용하여 직접 데이터를 삭제하는 방법입니다.

ex) DELETE FROM User WHERE userId = ?

 

 <soft delete>

논리삭제는 SQL의 UPDATE 명령어를 사용하여 삭제 여부를 알수 있는 컬럼에 데이터가 삭제되었다는 값을 넣어서 표현합니다.

ex) UPDATE User SET activated = 0 where userId = ?

 

 

<soft delete 단점>

1. 데이터베이스의 용량이 매우 커질 수밖에 없습니다.

2. SELECT 조회 시 불필요한 검색조건을 추가해야 합니다.

3. where을 통한 필터링이 꼭 추가되어야 합니다..

 

<soft delete 장점>

1.  데이터가 유지되어야 하는 속성의 테이블의 경우에는 논리삭제로 해당 테이블 레코드의  마지막 순간을 남길 수 있어 데이터를 나중에 다시 볼수 있다. 

 

2. Update 쿼리가 Delete 쿼리보다 마이크로초 단위로 봤을 때 더 빠릅니다. 

 

 

728x90

'데이터베이스' 카테고리의 다른 글

스키마, 인스턴스  (0) 2024.10.25
sql 기초문법  (1) 2024.02.09
w3school sql연습사이트  (0) 2024.02.09
키의 종류와 기능  (0) 2024.01.18
데이터베이스의 무결성이란?  (0) 2024.01.17

댓글