정보처리기사

2020년도 8월 정보처리기사 기출 분석 3과목 : 데이터베이스 구축

배채 2025. 1. 24. 16:17

3과목 데이터베이스 구축


41. 릴레이션 R의 모든 결정자가 후보키이면 그 릴레이션 R은 어떤 정규형에 속하는가?

->보이스/코드 정규형

 

보이스/코드 정규형(BCNF): 릴레이션 R에 있는 모든 비주요 속성이 후보키에 완전하게 의존해야 함. 모든 결정자가 후보키여야 함.

제 1 정규형(1NF): 모든 속성이 원자값이어야 함.
제 2 정규형(2NF): 제 1 정규형을 만족하고, 모든 비주요 속성이 기본키에 완전 함수 종속이어야 함.
제 4 정규형(4NF): 다치 종속이 없는 릴레이션임.


42. 다음 관계형 데이터 모델에 대한 설명으로 옳은 것은?

->relation 1개, attribute 3개, tuple 5개

 

관계형 데이터 모델에서 "릴레이션(relation)"은 테이블을 의미하며, "속성(attribute)"은 테이블의 열(column)을 나타낸다. "튜플(tuple)"은 테이블의 행(row)을 의미한다.


주어진 선택지 중에서 가장 적절한 설명은 "relation 1개, attribute 3개, tuple 5개"이다. 이는 하나의 테이블에 3개의 열과 5개의 행이 존재함을 뜻한다.


43. Commit과 Rollback 명령어에 의해 보장 답는 트랜잭션의 특성은?

-> 원자성

 

트랜잭션의 원자성(Atomicity)은 "모든 작업이 성공적으로 수행되거나, 하나도 수행되지 않은 상태로 유지된다"는 원칙이다. 이는 Commit 명령어가 호출되면 모든 변경사항을 데이터베이스에 영구적으로 저장하게 하고, Rollback 명령어가 호출되면 모든 변경사항을 되돌려서 트랜잭션 시작 시점으로 되돌아가게 해준다.

 

트랜잭션의 특성

 

원자성 (Atomicity): 트랜잭션이 성공적으로 완료되면 모든 변경사항이 데이터베이스에 반영되며, 그렇지 않으면 모든 변경사항이 취소된다.
일관성 (Consistency): 트랜잭션이 완료될 때 데이터베이스는 항상 유효한 상태를 유지해야 한다.
격리성 (Isolation): 동시에 실행되는 트랜잭션은 서로 영향을 미치지 않아야 한다.
지속성 (Durability): 성공적으로 수행된 트랜잭션의 결과는 데이터베이스에 영구적으로 기록된다.


44. 관계 데이터베이스의 테이블 R1에 대한 아래 SQL문의 실행결과로 옳은것은?

->2


45. DCL명령어가 아닌것은?

 


46. 병행제어 기법 중 로킹에 대한 설명으로 옳지 않은 것은?

->로킹의 단위가 커지면 데이터베이스 공유도 증가한다.

 

로킹: 데이터에 대한 일관성을 유지하기 위해 데이터베이스에서 사용하는 기술로, 특정 트랜잭션이 데이터를 수정하거나 조회할 때 다른 트랜잭션이 해당 데이터를 접근하지 못하도록 막는 기능이다.


로킹 단위
-작은 단위 (예: 레코드): 더 많은 사용자들이 개별 데이터 항목에 동시에 접근 가능하므로 공유도가 높다.
-큰 단위 (예: 테이블): 많은 데이터 항목이 하나의 로킹으로 묶여, 동시에 다른 트랜잭션이 접근할 수 없는 상태가 되어 공유도가 낮아진다.


47. 관계 데이터보델의 무결성 제약 중 기본키 값의 속성 값이 널(Null)값이 아닌 원자 값을 갖는 성질은?

-> 개체 무결성

 

개체 무결성은 관계형 데이터베이스에서 각 튜플(레코드)이 고유한 기본키를 가져야 한다는 규칙을 말하며, 기본키는 널(Null) 값을 가질 수 없다. 이를 통해 데이터베이스의 모든 레코드를 식별할 수 있도록 보장한다. 즉, 기본키는 모든 데이터 항목이 유일하게 식별되도록 보장하며, 널 값이 없어야 한다는 것이 핵심이다.


참조 무결성
Foreign Key 제약을 의미하며, 하나의 테이블의 필드가 다른 테이블의 기본키와 일치해야 하는 규칙이다. 이를 통해 테이블 간의 관계를 올바르게 유지할 수 있다.


도메인 무결성
특정 속성의 값이 그 속성의 유형과 맞아야 하며, 정의된 도메인 내의 값만 허용된다는 것을 의미한다. 예를 들어, 나이를 저장하는 속성이라면, 음수 값이나 비합리적인 값은 허용되지 않는다.


튜플의 유일성
각 튜플이 서로 다름을 보장하는 특성을 의미하며, 이는 데이터베이스 내 모든 레코드가 고유해야 함을 나타낸다. 그러나 튜플의 유일성은 기본적으로 개체 무결성과 밀접히 연결되어 있다.


48. 뷰(View)의 장점이 아닌 것은?

->뷰 자체로 인덱스를 가짐

 

뷰(View)는 기본적으로 하나 이상의 테이블에서 데이터를 가져오는 쿼리의 결과로 만들어지며, 인덱스를 직접 갖지 않는다. 뷰는 기본 테이블의 데이터를 노출하지만, 성능을 위해 인덱스를 생성하려면 기본 테이블에 인덱스를 추가해야 한다.

 

뷰의 장점

데이터 보안 용이

논리적 독립성 제공

사용자 데이터 관리 용이


49. 분산 데이터베이스의 투병성에 해당 하지 않은 것은?

->Media Access Transparency

 

Media Access Transparency는 분산 데이터베이스의 투명성 개념의 일부가 아니며, 주로 물리적인 저장 매체와 관련된 접근 방식을 다룬다.

 

Location Transparency:
데이터의 위치가 사용자가 인식하지 못하도록 만들어지는 것으로, 사용자는 데이터가 어디에 저장되어 있는지 모르고 접근할 수 있다. 즉, 데이터의 물리적 위치와 관계없이 사용자는 동일한 방법으로 데이터에 접근할 수 있다.


Replication Transparency:
데이터의 복제본이 여러 곳에 존재하더라도 사용자는 이를 인식하지 않고 하나의 데이터로 취급할 수 있도록 한다. 그래서 데이터의 복제 상태에 상관없이 통일된 데이터로 다룰 수 있다.


Failure Transparency:
시스템 내에서 데이터베이스가 고장나거나 문제가 발생해도 사용자가 이를 인식하지 못하게 하는 것으로, 시스템이 자동으로 복구되도록 하여 중단 없이 서비스를 유지한다.

 


50. 정규화의 목적으로 옳지 않은 것은?

->중복을 배제하여 삽입, 삭제, 갱신 이상의 발생을 야기한다.

 

 

어떠한 릴레이션이라도 데이터베이스 내에서 표현 가능하게 만든다.
정규화는 데이터 모델링 과정에서 모든 릴레이션(테이블)이 데이터베이스 내에서 적절하게 표현될 수 있도록 도와준다.


데이터 삽입시 릴레이션을 재구성할 필요성을 줄인다.
정규화는 데이터 삽입 시에 필요한 구조를 미리 설정하여, 데이터를 쉽게 삽입할 수 있도록 해준다. 이를 통해 릴레이션을 재구성할 필요성을 줄인다.


효과적인 검색 알고리즘을 생성할 수 있다.
정규화된 데이터베이스는 데이터의 구조가 명확하여, 데이터 검색 알고리즘을 보다 효율적으로 설계할 수 있게 하여 검색 성능을 향상시킨다.


51. 다음에 해당하는 함수 종속의 추론 규칙은?

X->Y이고 Y->Z이면 X->Z이다.

->이행규칙

이행규칙은 종속성이 중요하다.

 

분해 규칙 (Decomposition Rule)
분해 규칙은 속성 집합이 여러 개의 속성 집합으로 나눌 수 있는 경우에 사용된다. 예를 들어, 만약 A->B, C라면 A->B 및 A->C가 성립한다.


반사 규칙 (Reflexive Rule)
반사 규칙은 속성 집합이 자신을 포함하는 관계를 나타낸다. 즉, 만약 A가 속성 집합이라면 A->A가 성립한다.


결합 규칙 (Union Rule)
결합 규칙은 여러 개의 속성 집합이 결합될 때 성립하는 규칙이다. 예를 들어, A->B 및 A->C라면 A->B, C가 성립한다.


52. 다음 R과 S 두 릴레이션에 대한 Division 연산의 수행 결과는?

->4


53. player테이블에는 player_name, team_id, height컬럼이 존재한다. 아래 SQL문에서 문법적 오류가 있는 부분은?

(1) SELECT player_name,height
(2) FROM player
(3)WHERE team_id='Korea'
(4)AND height BETWEEN 170 or 180;

 

-> And height BETWEEN 170 or 180;

 

SQL의 BETWEEN 절은 다음과 같은 형식을 사용해야 한다: BETWEEN 시작값 AND 끝값.
즉, height BETWEEN 170 AND 180 형태이어야 하며, or는 사용해서는 안 된다. or을 사용할 경우 이는 비논리적이게 되어 SQL 문법 오류가 발생한다.


54. 데이터베이스 로그(log)를 필요로 하는 회복 기법은?

-> 즉각 갱신 기법

 


55. DML 명령어가 아닌 것은?

->ALTER

 

DROP, ALTER는 DDL


56. 다음과 같이 위쪽 릴레이션을 아래쪽 릴레이션으로 정규화를 하였을 때 어떤 정규화 작업을 한 것인가?

->제 1 정규형

 


57. 관계대수의 순수관계 연산자가 아닌 것은?

-> Cartesian Product

 

순수관계 연산자

출처https://m.blog.naver.com/wook2124/222108771135


일반집합 연산자

출처https://m.blog.naver.com/wook2124/222108771135

 


58. 다음 중 SQL의 집계 함수가 아닌 것은? 

->CREATE

 

SQL의 집계 함수는 데이터를 분석하고 요약하는 데 사용되는 함수이다. 일반적으로 사용되는 집계 함수에는 다음과 같은 것들이 있다.

 

CREATE는 새로운 데이터베이스 객체를 생성할 때 사용하는 데이터 정의 언어(DDL) 명령어이기 때문이다.
AVG: 특정 값들의 평균을 계산하는 집계 함수이다.
COUNT: 레코드의 개수를 세는 집계 함수이다.
SUM: 특정 값들의 총합을 계산하는 집계 함수이다.


 

59. 릴레이션 조작 시 데이터들이 불필요한게 중복되어 예기치않게 발생하는 곤란한 현상을 의미하는 것은?

->anomaly

 

Anomaly는 데이터베이스에서 데이터가 중복되어 있을 때 발생할 수 있는 여러 가지 문제를 일컫습니다. 일반적으로 Anomaly는 다음과 같은 문제를 포함합니다:

삽입 이상 (Insertion Anomaly): 새로운 데이터를 추가할 때 불필요한 중복 데이터의 삽입이 발생할 수 있다. 예를 들어, 학생과 수업 정보를 담고 있는 테이블에서 학생 정보를 추가할 때 해당 학생이 듣는 모든 수업 정보를 함께 입력해야 하는 상황.

삭제 이상 (Deletion Anomaly): 데이터를 삭제할 때 필요한 정보가 함께 삭제되는 문제이다. 예를 들어, 한 학생이 수업을 듣지 않았다고 하여 데이터를 삭제할 경우 해당 학생에 대한 모든 정보가 삭제되어 버리는 경우.

수정 이상 (Update Anomaly): 데이터를 수정할 때 여러 곳에서 수정을 해야만 하는 경우에 발생하며, 이로 인해 데이터의 일관성이 깨질 위험이 있다. 예를 들어, 동일한 학생의 주소가 여러 테이블에 저장되어 있고, 주소를 변경할 때 모든 테이블을 수동으로 수정해야 한다면 오류가 발생할 수 있다.


60. 릴레이션에 대한 설명으로 거리가 먼 것은?

->한 릴레이션에 포함된 튜플 사이에는 순서가 있다.

 

관계형 데이터베이스에서의 릴레이션: 릴레이션은 수학적 집합이므로 그 안에 포함된 튜플(tuples) 사이에 기본적으로 순서가 존재하지 않는다. 즉, 릴레이션 내의 튜플들은 서로 독립적이며, 데이터베이스 시스템에서는 튜플의 순서가 아니라 튜플의 내용이 중요하다.

관계 모델의 특성: 관계형 모델에서는 데이터의 무결성을 위해 튜플의 순서가 중요하지 않으며, 모든 튜플은 고유한 키에 의해 식별된다. 튜플의 삽입, 삭제 등 작업이 이루어질 때, 그 순서는 결과에 영향을 미치지 않는다.

SQL 언어의 특징: SQL을 통한 데이터 조작 시에도 결과의 순서는 기본적으로 정렬되지 않으며, ORDER BY 구문을 사용하여 필요 시 명시적으로 순서를 정할 수 있다.

반응형