모두CBT

다음 중 아래 SQL 문에 대한 설명으로 옳은 것은?UPDATE 학생 … | [컴퓨터활용능력 1급 필기] 19년 2회차 기출문제 상세 페이지

1[컴퓨터활용능력 1급 필기] 19년 2회차
다음 중 아래 SQL 문에 대한 설명으로 옳은 것은?
UPDATE 학생 SET 주소='서울'
WHERE 학번=100;
1
[학생] 테이블에 주소가 '서울'이고 학번이 100인 레코드를 추가한다.
2
[학생] 테이블에서 주소가 '서울'이고 학번이 100인 레코드를 검색한다.
3
[학생] 테이블에서 학번이 100인 레코드의 주소를 '서울'로 갱신한다.
4
[학생] 테이블에서 주소가 '서울'인 레코드의 학번을 100으로 갱신한다.
해설

제시된 문장은 UPDATE 학생 SET 주소='서울' WHERE 학번=100; 이다. UPDATE는 이미 저장되어 있는 레코드의 필드 값을 수정하는 명령으로, 레코드를 새로 넣는 INSERT나 자료를 꺼내 보는 SELECT와는 역할이 완전히 다르다. 따라서 이 문장으로 레코드가 추가되거나 검색되는 일은 없다.

UPDATE 문에서 WHERE 절은 어떤 레코드를 고칠지를 한정하고, SET 절은 그 레코드의 어떤 필드를 어떤 값으로 바꿀지를 지정한다. 여기서는 조건이 학번=100이므로 학번이 100인 레코드가 대상이 되고, SET 주소='서울'에 따라 그 레코드의 주소 필드가 '서울'로 갱신된다.

조건과 변경 대상을 서로 뒤집어 읽지 않도록 주의해야 한다. 주소가 '서울'인 레코드들의 학번을 100으로 바꾸려면 UPDATE 학생 SET 학번=100 WHERE 주소='서울'; 처럼 SET과 WHERE에 들어가는 내용이 정반대가 되어야 한다.

내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.