
정답 4번
1번은 PK를 지정하는 ALTER TABLE 문장에 문법 오류가 존재하고, 올바른 문법이 사용된 문장은 다음과 같다
- (오류 발생) ALTER TABLE PRODUCT ADD PRIMARY KEY PRODUCT_PK ON (PROD_ID);
- (오류 수정) ALTER TABLE PRODUCT ADD CONSTRAINT PRODUCT_PK PRIMARY KEY (PROD_ID):
2번은 PROD_NM NOT NULL 칼럼에 대해서 NOT NULL 제약조건을 지정하지 않았다
3번은 테이블을 생성할 때 PK를 지정하는 문장에 문법 오류가 존재한다
따라서 정답은 4번이다

정답 4번
1번, 2번은 SQL Server에서 여러개의 칼럼을 ALTER COLUMN으로 동시에 수정하는 구문은 지원하지 않으므로 오류가 발생한다. 또한 괄호를 사용하지 않는다
3번은 분류명을 수정할 때 NOT NULL 구문을 지정하지 않으면, 기존의 NOT NULL 제약조건이 NULL로 변경되므로 NOT NULL 요건을 만족하지 않는다

정답 3번
트랜잭션의 특성 중 고립성(Isolation)은 어떤 트랜잭션이 수행 중일 때 다른 트랜잭션의 영향을 받아 잘못된 결과를 도출하는 경우가 발생하는 것을 방지하는 것이다. 문제에서 TX1이 변경한 col2의 내용이 TX2에 의해서 잘못 반영되는 문제가 발생하였으므로 고립성에 문제가 발생하였음을 알 수 있다

정답 2번
DELETE FROM T; 이후 데이터 현황
- T 테이블 : 두건 모두 삭제됨
- S 테이블 (Cascade 옵션) : 두건 모두 삭제됨
- R 테이블 (Set Null 옵션) : Child 해당 필드(FK: B칼럼) 값이 Null로 변경됨
따라서 정답이 2번이다

정답 2번
핵심은 MERGE의 WHEN MATCHED에서 UPDATE 후 DELETE가 같이 실행된다는 점이다
초기 T1은 2건이다
매칭되는 7369(SMITH, CLERK)는 SAL = 800 - 500 = 300으로 업데이트된 뒤, SAL < 2000 조건에 걸려 삭제된다
7566(JONES, MANAGER)는 CLERK가 아니므로 변경 없이 유지된다
비매칭 행 중에서는 JOB='CLERK'만 INSERT하므로, 7876(ADAMS, CLERK) 1건만 추가된다
따라서 최종 건수는
초기 2건 - 1건(삭제) + 1건(삽입) = 2건이다

정답 3번
학번 칼럼이 PK 이기 때문에 NULL 값이 없다. count(*)와 COUNT(학번)의 결과는 항상 같다

정답 3번
RepName은 UNIQUE + NOT NULL 제약으로 유일 식별이 가능하지만, 실제 PRIMARY KEY로 선택된 컬럼은 SalesRepNo이므로 RepName의 키 특성은 후보키다
'🐢 꼬부기 LV.1 | 개념•기초 > 💧물대포(핵심개념)' 카테고리의 다른 글
| PAT 와 SSH (0) | 2026.02.27 |
|---|---|
| SQLD 자격검정 실전문제 과목2 문제풀이 111~126 (0) | 2026.02.25 |
| SQL 자격검정 실전문제 과목2 문제풀이81~98 (0) | 2026.02.20 |
| SQL 자격검정 실전문제 과목 2 문제풀이 66~80 (0) | 2026.02.18 |
| Oracle에서 MySQL로 무중단 전환하기 (0) | 2026.02.17 |