문제
다음 중 아래와 같은 필드로 구성된 [MEMBER] 테이블에서 실행 가능한 쿼리로 가장 적절하지 않은 것은?
| 필드 이름 | 데이터 형식 |
|---|---|
| 이름 | 텍스트 |
| 나이 | 숫자 |
| ID | 텍스트 |
(단, ID는 기본키이다.)
① INSERT INTO MEMBER (이름, 나이) VALUES ("홍길동", 20); ② INSERT INTO MEMBER (이름, 나이, ID) VALUES ("홍길동", 20, "123"); ③ UPDATE MEMBER SET 나이 = 20 WHERE ID LIKE "123*"; ④ DELETE FROM MEMBER WHERE 나이 >= 20;
정답
1번
해설
정답: 1. ID는 기본키이므로 반드시 값이 입력되어야 한다. ①은 ID를 빼고 이름·나이만 입력하므로 기본키가 비어 실행할 수 없다.
오답 풀이
- 1번: 기본키인 ID 값을 지정하지 않아 NULL이 되어 입력할 수 없으므로 가장 적절하지 않다.
- 2번: 이름·나이·ID를 모두 지정하므로 정상적으로 입력된다.
- 3번: ID가 '123'으로 시작하는 레코드의 나이를 갱신하는 정상 구문이다.
- 4번: 나이가 20 이상인 레코드를 삭제하는 정상 구문이다.
보충 개념 기본키는 NULL을 허용하지 않고 중복도 안 되므로, INSERT 시 반드시 고유한 값을 지정해야 한다.