위험한 실행
조건 없음
UPDATE products
SET price = 0;
SET price = 0;
ALL
테이블의 모든 상품 가격이 0으로 바뀝니다. 자동 커밋 환경이면 즉시 확정될 수 있습니다.
조건이 없으면 한 행이 아니라 테이블 전체가 대상이 됩니다. 실행 전 같은 조건으로 SELECT를 먼저 돌리는 습관이 사고를 줄입니다.
테이블의 모든 상품 가격이 0으로 바뀝니다. 자동 커밋 환경이면 즉시 확정될 수 있습니다.
먼저 대상 수를 확인하고, 기대 범위 안일 때만 트랜잭션 안에서 실행합니다.
같은 WHERE로 COUNT와 샘플 행을 확인합니다.
BEGIN 후 실행하고 영향 행 수를 본 뒤 COMMIT합니다.
큰 삭제는 작은 단위로 나누어 락과 로그 부담을 줄입니다.