문제
TRUNCATE에 관한 설명으로 옳은 것은?
① 데이터 구조와 데이터를 모두 삭제한다. ② 조건을 지정하여 일부 행만 삭제할 수 있다. ③ 특정 행만 삭제하는 것은 불가능하다. ④ 모든 행을 제거할 경우 DELETE보다 성능이 떨어진다.
정답
3번
해설
정답: 3. TRUNCATE는 테이블의 전체 데이터를 제거하는 명령으로 특정 행만 조건 지정하여 삭제할 수 없다.
오답 풀이
- 1번: 데이터 구조까지 삭제하는 것은 DROP에 가깝다. TRUNCATE는 테이블 구조를 유지한다.
- 2번: TRUNCATE는 WHERE 조건을 사용할 수 없다.
- 3번: 특정 행만 삭제할 수 없으므로 옳다.
- 4번: 전체 행 제거 시 일반적으로 DELETE보다 빠르다.
보충 개념 DELETE는 조건을 사용해 일부 행을 삭제할 수 있고 DML에 해당한다. TRUNCATE는 전체 데이터를 빠르게 제거하며 테이블 구조는 남긴다.