본문 바로가기
IT★자격증/정보시스템감리사 기출문제 풀이

2023년 제 24회 정보시스템 감리사 기출문제 풀이 - 데이터베이스(56-60)

by 꼬모부 2023. 12. 2.
728x90

[오늘부터 데이터베이스 기출문제 56-60를 풀어보겠습니다.]

 

문제 56

56. 다음 ER 다이어그램을 관계 모델로 변환할 경우 릴레이션의 개수로 가장 적절한 것은?

(단, ER 다이어그램의 이중선은 전체 참여를, 이중타원은 다치 속성을, 밑줄을 친 속성은 키 속성을 의미 한다.) 

 

ER 다이어그램

① 2
② 3
③ 4
④ 5

 

출제의도

이 부분도 다시 정리를 해서 올리겠습니다.

정답은 ③ 번입니다.

 

문제 57

57. 다음 뷰(view)의 변경 연산에 대해 적절하게 설명된 것을 모두 나열한 것은?

가. 두 개 이상의 테이블이 관련되어 정의된 뷰는 변경할 수 없다.
나. DISTINCT, GROUP BY가 사용되어 정의된 뷰는 변경할 수 없다.
다. 기본 테이블의 기본 키를 구성하는 속성이 포함 되어있지 않은 뷰는 변경할 수 없다.
라. 뷰의 열이 상수나 산술 연산자 또는 함수가 사용된 산술식으로 만들어진 뷰는 변경할 수 없다.

① 가, 다, 라
② 나, 다, 라
③ 가, 나, 라
④ 가, 나, 다, 라 

 

출제의도

뷰의 변경 연산에 대한 이해를 평가하는 것입니다.

 

각 문항에 대해서 설명드리겠습니다.:

가. 두 개 이상의 테이블이 관련되어 정의된 뷰는 변경할 수 없다.

뷰는 기본 테이블의 데이터를 가상적으로 조합하여 만든 가상 테이블입니다. 따라서, 두 개 이상의 테이블이 관련되어 정의된 뷰는 기본 테이블의 데이터를 수정하는 과정에서 데이터의 일관성을 유지하기 어렵습니다. 따라서, 두 개 이상의 테이블이 관련되어 정의된 뷰는 변경할 수 없습니다.

 

나. DISTINCT, GROUP BY가 사용되어 정의된 뷰는 변경할 수 없다.

DISTINCT, GROUP BY는 뷰의 결과 집합에서 중복을 제거하거나, 동일한 속성 값을 가진 행들을 그룹화하는 데 사용되는 함수입니다. 이러한 함수는 뷰의 결과 집합을 변경하기 때문에, DISTINCT, GROUP BY가 사용되어 정의된 뷰는 변경할 수 없습니다.

 

다. 기본 테이블의 기본 키를 구성하는 속성이 포함되어있지 않은 뷰는 변경할 수 없다. 기본 키는 테이블의 행들을 구분하는 데 사용되는 속성입니다. 기본 테이블의 기본 키를 구성하는 속성이 포함되어 있지 않은 뷰는 기본 테이블의 데이터를 수정하는 과정에서 데이터의 일관성을 유지하기 어렵습니다. 따라서, 기본 테이블의 기본 키를 구성하는 속성이 포함되어 있지 않은 뷰는 변경할 수 없습니다.

 

라. 뷰의 열이 상수나 산술 연산자 또는 함수가 사용된 산술식으로 만들어진 뷰는 변경할 수 없다. 뷰의 열이 상수나 산술 연산자 또는 함수가 사용된 산술식으로 만들어진 뷰는 뷰의 결과 집합을 변경하기 때문에, 변경할 수 없습니다.

 

따라서, 문제의 정답은 가, 나, 다, 라입니다. 

문제의 출제 의도는 뷰의 변경 연산에 대한 이해를 평가하는 것입니다.

 

문제 58

58. 속성 X, Y, Z를 포함하는 릴레이션 R(X, Y, Z)에 존재하는 함수 종속(functional dependency)에서 항상 성립하는 추론 규칙으로 옳지 않은 것은?

① X ⊇ Y 이면 X → Y
② X → YZ 이면 X → Y 이고 X → Z
③ X → Y 이면 임의의 Z에 대해 XZ → YZ
④ XZ → YZ 이면 임의의 Z에 대해 X → Y 

 

출제의도

함수 종속에 대한 이해를 해야합니다.

함수 종속은 데이터베이스 설계에서 중요한 개념이며, 그것이 어떻게 동작하는지 이해하는 것은 데이터베이스 시스템을 효과적으로 사용하는 데 중요합니다.

 

각 문항에 대해서 설명드리겠습니다.:

① X ⊇ Y 이면 X → Y:

이것은 축소 규칙입니다. X가 Y를 포함하면, X는 Y를 결정할 수 있습니다.

 

② X → YZ 이면 X → Y 이고 X → Z:

이것은 분해 규칙입니다. X가 YZ를 결정하면, X는 Y와 Z를 각각 결정할 수 있습니다.

 

③ X → Y 이면 임의의 Z에 대해 XZ → YZ:

이것은 증가 규칙입니다. X가 Y를 결정하면, X와 임의의 Z를 결합한 것은 Y와 동일한 Z를 결정할 수 있습니다.

 

④ XZ → YZ 이면 임의의 Z에 대해 X → Y:

이것은 잘못된 규칙입니다. XZ가 YZ를 결정한다고 해서, X가 항상 Y를 결정하는 것은 아닙니다.

 

따라서, 정답은 ④ XZ → YZ 이면 임의의 Z에 대해 X → Y 입니다.

 

문제 59

59. 다음 릴레이션 A(P, Q, R)와 B(Q, R, S)에 대해 결과 릴레이션 C(P, Q, R, S)가 나오도록 하는 관계 대수 연산으로 옳은 것은? 

 

① A ⋈ N B (자연 조인)
② A ⋈ + B (외부 조인)
③ A ⋉ B (세미 조인)
④ A ⋃ + B (외부 합집합) 

 

출제의도

이 문제도 다시 정리해서 올리겠습니다.

정답은 ② A ⋈ + B (외부 조인) 입니다.

 

문제 60

60. EMPLOYEE 테이블의 Dno 열에 대해 다음과 같은 참조 무결성이 선언되었다고 할 때, 이와 관련된 설명으로 옳은 것은?

CONSTRAINT EmpDeptFK
     FOREIGN KEY(Dno) REFERENCES DEPARTMENT(Dnumber)
     ON DELETE SET DEFAULT
     ON UPDATE CASCADE

① EMPLOYEE 테이블의 Dno 값이 삭제되면 DEPARTMENT 의 Dnumber 값은 디폴트 값으로 설정된다.
② EMPLOYEE 테이블의 Dno 값이 갱신되면 DEPARTMENT 의 Dnumber 값도 그 값으로 갱신된다.
③ DEPARTMENT의 Dnumber 값이 삭제되면 EMPLOYEE 테이블의 Dno 값은 NULL 값으로 설정된다.
④ DEPARTMENT의 Dnumber 값이 갱신되면 EMPLOYEE 테이블의 Dno 값도 그 값으로 갱신된다. 

 

출제의도

외래 키(foreign key) 제약 조건과 그에 따른 참조 무결성에 대한 이해를 검증하는 것입니다.

 

각 항목에 대한 설명은 다음과 같습니다:

① EMPLOYEE 테이블의 Dno 값이 삭제되면 DEPARTMENT 의 Dnumber 값은 디폴트 값으로 설정된다.:

이 설명은 옳지 않습니다.

외래 키 제약 조건은 참조하는 테이블(DEPARTMENT)의 값이 변경될 때 참조되는 테이블(EMPLOYEE)의 동작을 정의합니다. 따라서 EMPLOYEE 테이블의 Dno 값이 삭제되면 DEPARTMENT 테이블의 Dnumber 값에는 영향을 미치지 않습니다.

 

② EMPLOYEE 테이블의 Dno 값이 갱신되면 DEPARTMENT 의 Dnumber 값도 그 값으로 갱신된다.:

이 설명은 옳지 않습니다.

외래 키 제약 조건은 참조하는 테이블(DEPARTMENT)의 값이 변경될 때 참조되는 테이블(EMPLOYEE)의 동작을 정의합니다. 따라서 EMPLOYEE 테이블의 Dno 값이 갱신되어도 DEPARTMENT 테이블의 Dnumber 값에는 영향을 미치지 않습니다.

 

③ DEPARTMENT의 Dnumber 값이 삭제되면 EMPLOYEE 테이블의 Dno 값은 NULL 값으로 설정된다.:

이 설명은 옳지 않습니다.

ON DELETE SET DEFAULT 제약 조건은 참조하는 테이블(DEPARTMENT)의 값이 삭제될 때 참조되는 테이블(EMPLOYEE)의 해당 값이 디폴트 값으로 설정되도록 합니다. 따라서 DEPARTMENT 테이블의 Dnumber 값이 삭제되면 EMPLOYEE 테이블의 Dno 값은 NULL이 아니라 디폴트 값으로 설정됩니다.

 

④ DEPARTMENT의 Dnumber 값이 갱신되면 EMPLOYEE 테이블의 Dno 값도 그 값으로 갱신된다.:

이 설명은 옳습니다.

ON UPDATE CASCADE 제약 조건은 참조하는 테이블(DEPARTMENT)의 값이 갱신될 때 참조되는 테이블(EMPLOYEE)의 해당 값도 함께 갱신되도록 합니다. 따라서 DEPARTMENT 테이블의 Dnumber 값이 갱신되면 EMPLOYEE 테이블의 Dno 값도 그 값으로 갱신됩니다.

 

따라서, 이 문제에서 참조 무결성에 대해 옳게 설명된 것은 ④ DEPARTMENT의 Dnumber 값이 갱신되면 EMPLOYEE 테이블의 Dno 값도 그 값으로 갱신된다.입니다.

 

 

[다음 시간에는 데이터베이스 기출문제 61-65까지 풀어보도록 하겠습니다.]

반응형
LIST