1. 다음 설명과 관련 있는 트랜잭션의 특징은?
“트랜잭션의 연산은 모두 실행되거나, 모두 실행되지 않아야 한다.”
① Durability
② Isolation
③ Consistency
④ Atomicity
트랜잭션의 특성
- 원자성(Atomicity) : 완전하게 수행 완료되지 않으면 전혀 수행되지 않아야 함
- 일관성(Consistency) : 시스템의 고정 요소는 트랜잭션 수행 전후에 같아야 함
- 격리성(Isolation, 고립성) : 트랜잭션 실행 시 다른 트랜잭션의 간섭을 받지 않아야 함
- 영속성(Durability, 지속성) : 트랜잭션의 완료 결과가 데이터베이스에 영구히 기억됨
2. 데이터베이스에 영향을 주는 생성, 읽기, 갱신, 삭제 연산으로 프로세스와 테이블 간에 매트릭스를 만들어서 트랜잭션을 분석하는 것은?
① CASE 분석
② 일치 분석
③ CRUD 분석
④ 연관성 분석
3. 데이터베이스 로그(log)를 필요로 하는 회복 기법은?
① 즉각 갱신 기법
② 대수적 코딩 방법
③ 타임 스탬프 기법
④ 폴딩 기법
즉각 갱신 기법(Immediate Update)은 트랜잭션이 수행되는 도중에 데이터베이스에 직접 변경 내용을 반영하므로,
시스템 장애 발생 시 변경 내용을 취소(UNDO)하거나 재실행(REDO)하기 위해 반드시 로그(Log)를 기록해야 한다.
4. 테이블 R1, R2에 대하여 다음 SQL문의 결과는?
(SELECT 학번 FROM R1)
INTERSECT
(SELECT 학번 FROM R2)


INTERSECT (교집합) : 중복 데이터
5. 정규화의 필요성으로 거리가 먼 것은?
① 데이터 구조의 안정성 최대화
② 중복 데이터의 활성화
③ 수정, 삭제시 이상현상의 최소화
④ 테이블 불일치 위험의 최소화
정규화의 목적
- 데이터 구조의 안정성 최대화
- 중복 데이터의 최소화
- 수정 및 삭제 시 이상 현상 최소화
- 테이블 불일치 위험 간소화
6. 개체-관계 모델의 E-R 다이어그램에서 사용되는 기호와 그 의미의 연결이 틀린 것은?
① 사각형 – 개체 타입
② 삼각형 – 속성
③ 선 – 개체타입과 속성을 연결
④ 마름모 – 관계 타입
E-R 다이어그램
개체(Entity) - 사각형
속성(Attribute) - 타원
관계(Relationship) - 마름모
개체타입과 속성 연결 - 선
7. 분산 데이터베이스의 투명성(Transparency)에 해당하지 않는 것은?
① Location Transparency
② Replication Transparency
③ Failure Transparency
④ Media Access Transparency
분산데이터베이스의 목표 : 위중병장
위치 투명성 (Location Transparency) 하드웨어와 소프트웨어의 물리적 위치를 사용자가 알 필요가 없다. 중복 투명성 (Replication Transparency) 시스템 안에 파일들과 자원들의 부가적인 복사를 자유롭게할수 있다. 병행 투명성 (Concurrency Transparency) 다중 사용자들이 자원들을 자동으로 공유할 수 있다. 장애 투명성 (Failure Transparency) 사용자들은 어느 위치의 시스템에 장애가 발생했는지 알 필요가 없다.
8. 릴레이션에 대한 설명으로 거리가 먼 것은?
① 튜플들의 삽입, 삭제 등의 작업으로 인해 릴레이션은 시간에 따라 변한다.
② 한 릴레이션에 포함된 튜플들은 모두 상이하다.
③ 애트리뷰트는 논리적으로 쪼갤 수 없는 원자값으로 저장한다.
④ 한 릴레이션에 포함된 튜플 사이에는 순서가 있다.
9. SQL문에서 HAVING을 사용할 수 있는 절은?
① LIKE 절
② WHERE 절
③ GROUP BY 절
④ ORDER BY 절
SQL에서 HAVING절은 GROUP BY 절과 함께 사용되어 그룹화된 결과에 대해 조건을 지정할 때 사용됩니다
10. 관계대수에 대한 설명으로 틀린 것은?
① 주어진 릴레이션 조작을 위한 연산의 집합이다.
② 일반 집합 연산과 순수 관계 연산으로 구분된다.
③ 질의에 대한 해를 구하기 위해 수행해야 할 연산의 순서를 명시한다.
④ 원하는 정보와 그 정보를 어떻게 유도하는가를 기술하는 비절차적방법이다.
관계대수는 질의에 대한 해를 구하기 위해
수행해야 할 연산의 순서와 방법을 명시하는 절차적 언어이다.
11. 다음 SQL문의 실행 결과는?
SELECT 과목이름
FROM 성적
WHERE EXISTS
(SELECT 학번 FROM 학생 WHERE 학생.학번 = 성적.학번 AND 학생.학과 IN (‘전산’, ‘전기’)
AND 학생.주소 = ‘경기’);


12. 로킹(Locking) 기법에 대한 설명으로 틀린 것은?
① 로킹의 대상이 되는 객체의 크기를 로킹 단위라고 한다.
② 로킹 단위가 작아지면 병행성 수준이 낮아진다.
③ 데이터베이스도 로킹 단위가 될 수 있다.
④ 로킹 단위가 커지면 로크 수가 작아 로킹 오버헤드가 감소한다.
로킹 단위가 작아지면 다른 트랜잭션이 동시에 접근할 수 있는 데이터의 범위가 넓어져 병행성 수준이 높아진다.
13. 사용자 X1에게 department 테이블에 대한 검색 연산을 회수하는 명령은?
① delete select on department to X1;
② remove select on department from X1;
③ revoke select on department from X1;
④ grant select on department from X1;
revoke : SQL에서 특정 사용자에게 부여했던 권한을 회수(취소)하는 명령
14. 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 ;
① (1)
② (2)
③ (3)
④ (4)
15. 다음 내용이 설명하는 것은?
- 네트워크상에 광채널 스위치의 이점인 고속 전송과 장거리 연결 및 멀티 프로토콜 기능을 활용
- 각기 다른 운영체제를 가진 여러 기종들이 네트워크상에서 동일 저장장치의 데이터를 공유하게 함으로써, 여러 개의 저장 장치나 백업 장비를 단일화시킨 시스템
① SAN
② MBR
③ NAC
④ NIC
SAN(Storage Area Network)
고속 전송과 장거리 연결 + 동일 저장장치의 데이터 공유
16. 제 3정규형에서 보이스코드 정규형(BCNF)으로 정규화 하기 위한 작업은?
① 원자 값이 아닌 도메인을 분해
② 부분 함수 종속 제거
③ 이행 함수 종속 제거
④ 결정자가 후보키가 아닌 함수 종속 제거
17. A1, A2, A3 3개 속성을 갖는 한 릴레이션에서 A1의 도메인은 3개 값, A2의 도메인은 2개 값, A3의 도메인은 4개 값을 갖는다. 이 릴레이션에 존재할 수 있는 가능한 튜플(Tuple)의 최대 수는?
① 24
② 12
③ 8
④ 9
최대 튜플수 : 모든 속성의 도메인 값 곱하기
3 * 2 * 4 = 24
18. 데이터베이스 설계 시 물리적 설계 단계에서 수행하는 사항이 아닌 것은?
① 저장 레코드 양식 설계
② 레코드 집중의 분석 및 설계
③ 접근 경로 설계
④ 목표 DBMS에 맞는 스키마 설계
④번은 논리적 설계단계에서 수행된다.
물리적 설계
- 목표 DBMS에 종속적인 물리적 구조 설계
- 저장 레코드 양식 설계
- 레코드 집중의 분석/설계
- 접근 경로 설계
- 트랜잭션 세부 설계
19. 한 릴레이션 스키마가 4개 속성, 2개 후보키 그리고 그 스키마의 대응 릴레이션 인스턴스가 7개 튜플을 갖는다면 그 릴레이션의 차수(degree)는?
① 1
② 2
③ 4
④ 7
차수 = 속성의 수
20. 데이터웨어하우스의 기본적인 OLAP(on-line analytical processing) 연산이 아닌 것은?
① translate
② roll-up
③ dicing
④ drill-down
OLAP(on-line analytical processing) 연산 종류
- roll-up, drill-down, dicing, slicing
21. 릴레이션 R의 차수가 4이고 카디널리티가 5이며, 릴레이션 S의 차수가 6이고 카디널리티가 7일 때, 두 개의 릴레이션을 카티션 프로덕트한 결과의 새로운 릴레이션의 차수와 카디널리티는 얼마인가?
① 24, 35
② 24, 12
③ 10, 35
④ 10, 12
- Cartesian Product(교차곱)의 결과 릴레이션은
두 릴레이션의 속성의 개수는 더하고 각 튜플의 개수는 곱한 크기의 결과 릴레이션이 생성된다.
- 릴레이션 R : 차수 4, 카디널리티 5
- 릴레이션 S : 차수 6, 카디널리티 7
- -----------------------------------
- 결과릴레이션 : 차수 10, 카디널리티 35
22. 시스템 카탈로그에 대한 설명으로 옳지 않은 것은?
① 사용자가 직접 시스템 카탈로그의 내용을 갱신하여 데이터베이스 무결성을 유지한다.
② 시스템 자신이 필요로 하는 스키마 및 여러 가지 객체에 관한 정보를 포함하고 있는 시스템 데이터베이스이다.
③ 시스템 카탈로그에 저장되는 내용을 메타데이터라고도 한다.
④ 시스템 카탈로그는 DBMS가 스스로 생성하고 유지한다.
사용자가 직접 갱신하게 되면 데이터베이스의 무결성이 손상될 수 있다.
23. 다음 관계대수 중 순수 관계연산자가 아닌 것은?
① 차집합(difference)
② 프로젝트(project)
③ 조인(join)
④ 디비전(division)
순수 관계 연산자 - 선프조디
Select, Project, Join, Division
24. 다음 기법과 가장 관계되는 것은?
deferred modification
immediate update
shadow paging
check point
① Locking
② Integrity
③ Recovery
④ Security
25. 다음 R1과 R2의 테이블에서 아래의 실행결과를 얻기 위한 SQL문은?

① SELECT 과목번호, 과목이름
FROM R1, R2
WHERE R1.학번 = R2.학번 AND R1.학과 = ‘전자공학’ AND R1.이름 = ‘강남길’;
② SELECT 과목번호, 과목이름
FROM R1, R2
WHERE R1.학번 = R2.학번 OR R1.학과 = ‘전자공학’ OR R1.이름 = ‘홍길동’;
③ SELECT 과목번호, 과목이름
FROM R1, R2
WHERE R1.학번 = R2.학번 AND R1.학과 = ‘컴퓨터고학’ AND R1.이름 = ‘강남길’;
④ SELECT 과목번호, 과목이름
FROM R1, R2
WHERE R1.학번 = R2.학번 OR R1.학과 = ‘컴퓨터공학’ OR R1.이름 = ‘홍길동’;
26. 다음 설명의 ( )안에 들어갈 내용으로 적합한 것은?
“후보키는 릴레이션에 있는 모든 튜플에 대해 유일성과 ( )을 모두 만족시켜야 한다.”
① 중복성
② 최소성
③ 참조성
④ 동일성
슈퍼키(Super Key)
- 두 개 이상의 속성으로 구성된 기본키
- 유일성은 만족시키지만, 최소성은 만족시키지 못한다.
후보키(Candidate Key)
- 모든 튜플들을 유일하게 식별할 수 있는 하나 또는 몇 개의 속성 집합을 의미한다.
- 유일성과 최소성 모두 만족한다.
27. SQL 문에서 SELECT에 대한 설명으로 옳지 않은 것은?
① FROM 절에는 질의에 의해 검색될 데이터들을 포함하는 테이블명을 기술한다.
② 검색 결과에 중복되는 레코드를 없애기 위해서는 WHERE 절에 ‘DISTINCT' 키워드를 사용한다.
③ HAVING 절은 GROUP BY 절과 함께 사용되며, 그룹에 대한 조건을 지정한다.
④ ORDER BY 절은 특정 속성을 기준으로 정렬하여 검색할 때 사용한다.
검색 결과에 중복되는 레코드를 없애기 위해서는 SELECT절에 DISTINCT 키워드를 사용한다.
28. 제3정규형(3NF)에서 BCNF(Boyce-Codd Normal Form)가 되기 위한 조건은?
① 결정자가 후보키가 아닌 함수 종속 제거
② 이행적 함수 종속 제거
③ 부분적 함수 종속 제거
④ 원자값이 아닌 도메인 분해
BCNF : 결정자가 후보키가 아닌 함수 종속 제거
29. 다음 중 SQL의 집계 함수(aggregation function)가 아닌 것은?
① AVG
② COUNT
③ SUM
④ CREATE
30. 다음 두 릴레이션 R1과 R2의 카티션 프로덕트(cartesian product) 수행 결과는?


Cartesian Product(교차곱)의 결과 릴레이션은
두 릴레이션의 속성의 개수는 더하고
각 튜플의 개수는 곱한 크기의 결과 릴레이션이 생성된다.
31. 테이블 R과 S에 대한 SQL문이 실행되었을 때, 실행결과로 옳은 것은?
SELECT A FROM R
UNION ALL
SELECT A FROM S;


32. 다음 그림에서 트리의 차수는?

① 1
② 2
③ 3
④ 4
차수(Degree)는 트리 노드수가 가장 많은 수
33. 관계 데이터베이스 모델에서 차수(Degree)의 의미는?
① 튜플의 수
② 테이블의 수
③ 데이터베이스의 수
④ 애트리뷰트의 수
차수(Degree) : 속성(애트리뷰트)의 수 (차애)
34. DELETE 명령에 대한 설명으로 틀린 것은?
① 테이블의 행을 삭제할 때 사용한다.
② WHERE 조건절이 없는 DELETE 명령을 수행하면 DROP TABLE 명령을 수행했을 때와 동일한 효과를 얻을 수 있다.
③ SQL을 사용 용도에 따라 분류할 경우 DML에 해당한다.
④ 기본 사용 형식은 “DELETE FROM 테이블[WHERE 조건];” 이다.
DELETE : 테이블의 행을 삭제하지만 테이블은 남아있다
DROP TABLE : 테이블 자체를 DB에서 삭제
35. 정보시스템과 관련한 다음 설명에 해당하는 것은?
- IBM AIX 시스템에서 장애 발생 시 서비스 중단 없이 시스템을 계속 운영하기 위한 클러스터링 솔루션이다.
- 각 시스템 간에 공유 디스크를 중심으로 클러스터링으로 엮여 다수의 시스템을 동시에 연결할 수 있다.
- 서버 장애 시 다른 노드로 자동으로 애플리케이션을 전환하여 가동 중단 시간을 최소화한다.
① 고가용성 솔루션(HACMP)
② 점대점 연결 방식(Point-to-Point Mode)
③ 스턱스넷(Stuxnet)
④ 루팅(Rooting)
고가용성 솔루션(HACMP:High Availability Cluster Multi Processing)
클러스터링으로 엮어 연결, 다른 노드로 전환
36. 참조 무결성을 유지하기 위하여 DROP문에서 부모 테이블의 항목 값을 삭제할 경우 자동적으로 자식 테이블의 해당 레코드를 삭제하기 위한 옵션은?
① CLUSTER
② CASCADE
③ SET-NULL
④ RESTRICTED
37. Commit과 Rollback 명령어에 의해 보장 받는 트랜잭션 특성은?
① 병행성
② 보안성
③ 원자성
④ 로그
트랜잭션의 특성
- 원자성(Atomicity) : 완전하게 수행 완료되지 않으면 전혀 수행되지 않아야 함
- 일관성(Consistency) : 시스템의 고정 요소는 트랜잭션 수행 전후에 같아야 함
- 격리성(Isolation, 고립성) : 트랜잭션 실행 시 다른 트랜잭션의 간섭을 받지 않아야 함
- 영속성(Durability, 지속성) : 트랜잭션의 완료 결과가 데이터베이스에 영구히 기억됨
38. 릴레이션에서 기본 키를 구성하는 속성은 널(Null)값이나 중복 값을 가질 수 없다는 것을 의미하는 제약조건은?
① 참조 무결성
② 보안 무결성
③ 개체 무결성
④ 정보 무결성
무결성(Integrity)
- 개체 무결성:기본키의 값은 널(Null)값이나 중복 값을 가질 수 없다는 제약조건이다.
- 참조 무결성:참조할 수 없는 외래키 값을 가질 수 없다는 제약조건이다.
- 도메인 무결성:릴레이션의 하나의 속성은 반드시 원자값이어야 한다는 것을 보장하는 제약조건이다.
39. 개체-관계 모델(E-R)의 그래픽 표현으로 옳지 않은 것은?
① 개체타입 - 사각형
② 속성 - 원형
③ 관계타입 - 마름모
④ 연결 – 삼각형
E-R 다이어그램
개체(Entity) - 사각형
속성(Attribute) - 타원
관계(Relationship) - 마름모
개체타입과 속성 연결 - 선
40. 정규화 과정에서 A→B 이고, B→C 일 때 A→C 인 관계를 제거하는 관계는?
① 1NF → 2NF
② 2NF → 3NF
③ 3NF → BCNF
④ BCNF → 4NF
주어진 "A→B 이고, B→C 일 때 A→C" 관계는 이행적 함수 종속이다.
이 이행적 함수 종속을 제거하는 과정이
제2정규형(2NF)에서 제3정규형(3NF)으로 정규화하는 작업이다.
41. 다음 중 기본키는 NULL 값을 가져서는 안되며, 릴레이션 내에 오직 하나의 값만 존재해야 한다는 조건을 무엇이라 하는가?
① 개체 무결성 제약조건
② 참조 무결성 제약조건
③ 도메인 무결성 제약조건
④ 속성 무결성 제약조건
무결성(Integrity)
- 개체 무결성:기본키의 값은 널(Null)값이나 중복 값을 가질 수 없다는 제약조건이다.
- 참조 무결성:참조할 수 없는 외래키 값을 가질 수 없다는 제약조건이다.
- 도메인 무결성:릴레이션의 하나의 속성은 반드시 원자값이어야 한다는 것을 보장하는 제약조건이다.
42. CREATE TABLE문에 포함되지 않는 기능은?
① 속성 타입 변경
② 속성의 NOT NULL 여부 지정
③ 기본키를 구성하는 속성 지정
④ CHECK 제약조건의 정의
43. 관계형 데이터베이스에서 다음 설명에 해당하는 키(Key)는?
한 릴레이션 내의 속성들의 집합으로 구성된 키로서, 릴레이션을 구성하는 모든 튜플에 대한 유일성은 만족시키지만 최소성은 만족시키지 못한다.
① 후보키
② 대체키
③ 슈퍼키
④ 외래키
슈퍼키(Super Key)
- 두 개 이상의 속성으로 구성된 기본키
- 유일성은 만족시키지만, 최소성은 만족시키지 못한다.
후보키(Candidate Key)
- 모든 튜플들을 유일하게 식별할 수 있는 하나 또는 몇 개의 속성 집합을 의미한다.
- 유일성과 최소성 모두 만족한다.
44. 데이터베이스 설계 단계 중 물리적 설계 시 고려 사항으로 적절하지 않은 것은?
① 스키마의 평가 및 정제
② 응답 시간
③ 저장 공간의 효율화
④ 트랜잭션 처리량
물리적 설계
- 목표 DBMS에 종속적인 물리적 구조 설계
- 저장 레코드 양식 설계
- 레코드 집중의 분석/설계
- 접근 경로 설계
- 트랜잭션 세부 설계
45. 정규화를 거치지 않아 발생하게 되는 이상(anomaly) 현상의 종류에 대한 설명으로 옳지 않은 것은?
① 삭제 이상이란 릴레이션에서 한 튜플을 삭제할 때 의도와는 상관없는 값들도 함께 삭제되는 연쇄 삭제 현상이다.
② 삽입 이상이란 릴레이션에서 데이터를 삽입할 때 의도와는 상관없이 원하지 않는 값들도 함께 삽입되는 현상이다.
③ 갱신 이상이란 릴레이션에서 튜플에 있는 속성값을 갱신할 때 일부 튜플의 정보만 갱신되어 정보에 모순이 생기는 현상이다.
④ 종속 이상이란 하나의 릴레이션에 하나 이상의 함수적 종속성이 존재하는 현상이다.
데이터베이스 이상 현상은
삽입 이상(Insertion Anomaly), 삭제 이상(Deletion Anomaly), 갱신 이상(Update Anomaly)
세 가지로 분류된다.
46. 정규화된 엔티티, 속성, 관계를 시스템의 성능 향상과 개발 운영의 단순화를 위해 중복, 통합, 분리 등을 수행하는 데이터 모델링 기법은?
① 인덱스정규화
② 반정규화
③ 집단화
④ 머징
47. 로킹 단위(Locking Granularity)에 대한 설명으로 옳은 것은?
① 로킹 단위가 크면 병행성 수준이 낮아진다.
② 로킹 단위가 크면 병행 제어 기법이 복잡해진다.
③ 로킹 단위가 작으면 로크(lock)의 수가 적어진다.
④ 로킹은 파일 단위로 이루어지며, 레코드와 필드는 로킹 단위가 될 수 없다.
로킹 단위가 커지면 다른 트랜잭션이 동시에 접근할 수 있는 데이터의 범위가 줄어들어 병행성 수준이 낮아진다.
48. 어떤 릴레이션 R에서 X와 Y를 각각 R의 애트리뷰트 집합의 부분 집합이라고 할 경우 애트리뷰트 X의 값 각각에 대해 시간에 관계없이 항상 애트리뷰트 Y의 값이 오직 하나만 연관되어 있을 때 Y는 X에 함수 종속이라고 한다. 이 함수 종속의 표기로 옳은 것은?
① Y → X
② Y ⊂ X
③ X → Y
④ X ⊂ Y
함수 종속 관계에서 "X의 값 각각에 대해 항상 Y의 값이 오직 하나만 연관되어 있다"는 것은
X가 Y를 결정한다는 의미이며, 이를 X→Y 로 표기한다.
49. 해싱 등의 사상 함수를 사용하여 레코드 키(Record Key)에 의한 주소 계산을 통해 레코드를 접근할 수 있도록 구성한 파일은?
① 순차 파일
② 인덱스 파일
③ 직접 파일
④ 다중 링 파일
사상함수 사용, 레코드키로 주소계산 - 직접파일
50. 동시성 제어를 위한 직렬화 기법으로 트랜잭션 간의 처리 순서를 미리 정하는 방법은?
① 로킹 기법
② 타임스탬프 기법
③ 검증 기법
④ 배타 로크 기법
처리순서를 스탬프를 찍어 정함
51. 물리데이터 저장소의 파티션 설계에세 파티션 유형으로 옳지 않은 것은?
① 범위분할(Range Partitioning)
② 해시분할(Hash Partitioning)
③ 조합분할(Composite Partitioning)
④ 유닛분할(Unit Processing)
Partitioning 유형
- 범위 분할, 목록 분할, 해시 분할, 조합 분할
52. 테이블 두 개를 조인하여 뷰 V_1을 정의하고, V_1을 이용하여 뷰 V_2를 정의하였다. 다음 명령 수행 후 결과로 옳은 것은?
DROP VIEW V_1 CASCADE;
① V_1만 삭제된다.
② V_2만 삭제된다.
③ V_1과 V_2 모두 삭제된다.
④ V_1과 V_2 모두 삭제되지 않는다.
53. 다음 SQL 문에서 ( ) 안에 들어갈 내용으로 옳은 것은?
UPDATE 인사급여 ( ) 호봉 = 15
WHERE 성명 = ‘홍길동’;
① SET
② FROM
③ INTO
④ IN
54. 『회원』테이블 생성 후 『주소』필드(컬럼)가 누락되어 이를 추가하려고 한다. 이에 적합한 SQL 명령어는?
① DELETE
② RESTORE
③ ALTER
④ ACCESS
55. 뷰(VIEW)에 대한 설명으로 틀린 것은?
① 뷰 위에 또 다른 뷰를 정의할 수 있다.
② 뷰에 대한 조작에서 삽입, 갱신, 삭제 연산은 제약이 따른다.
③ 뷰의 정의는 기본 테이블과 같이 ALTER문을 이용하여 변경한다.
④ 뷰가 정의된 기본 테이블이 제거되면 뷰도 자동적으로 제거된다.
뷰(VIEW)는 기본 테이블과 달리 ALTER 문을 사용하여 정의를 변경할 수 없다.
56. 데이터 사전에 대한 설명으로 틀린 것은?
① 시스템 카탈로그 또는 시스템 데이터베이스라고도 한다.
② 시스템 카탈로그는 DBMS가 스스로 생성하고 유지한다.
③ 데이터베이스에 대한 데이터인 슈퍼데이터(Syperadata)를 저장하고 있다.
④ 데이터 사전에 있는 데이터에 실제로 접근하는 데 필요한 위치 정보는 데이터 디렉토리(Data Directory)라는 곳에서 관리한다.
슈퍼데이터가 아닌 메타데이터
57. 데이터베이스의 인덱스와 관련한 설명으로 틀린 것은?
① 문헌의 색인, 사전과 같이 데이터를 쉽고 빠르게 찾을 수 있도록 만든 데이터 구조이다.
② 테이블에 붙여진 색인으로 데이터 검색 시 처리속도 향상에 도움이 된다.
③ 인덱스의 추가, 삭제 명령어는 각각 ADD, DELETE이다.
④ 대부분의 데이터베이스에서 테이블을 삭제하면 인덱스도 같이 삭제된다.
인덱스를 추가하는 명령어는 CREATE INDEX이고,
삭제하는 명령어는 DROP INDEX이다.
58. 관계해석에서 ‘There Exists: 존재 정량자’의 의미를 나타내는 논리 기호는?
① ∃
② ∈
③ ∀
④ U
관계 해석 자유 변수
∃ (There Exists) 존재 정량자(Existential Quantifier) 존재한다 ∈ (Element of) - ~의 원소이다, 속한다 ∀ (For All) 전칭 정량자(Universal Quantifier) 모든 또는 임의의 U (Union) 집합 연산 기호 합집합
59. 다음은 관계형 데이터베이스의 키(Key)를 설명하고 있다. 해당되는 키는?
• 모든 튜플들을 유일하게 식별할 수 있는 하나 또는 몇 개의 속성 집합을 의미한다.
• 유일성과 최소성 모두 만족한다.
① 후보키
② 대체키
③ 슈퍼키
④ 외래키
슈퍼키(Super Key)
- 두 개 이상의 속성으로 구성된 기본키
- 유일성은 만족시키지만, 최소성은 만족시키지 못한다.
후보키(Candidate Key)
- 모든 튜플들을 유일하게 식별할 수 있는 하나 또는 몇 개의 속성 집합을 의미한다.
- 유일성과 최소성 모두 만족한다.
60. SQL에서 각 기능에 대한 내장 집계함수(Aggregate Function)의 연결이 옳지 않은 것은?
① 열에 있는 값들의 개수 • COUNT
② 열에 있는 값들의 평균 • AVG
③ 열에 있는 값들의 합 • TOT
④ 열에서 가장 큰 값 • MAX
열에 있는 값들의 합 : SUM
61. 관계해석에 대한 설명으로 옳지 않은 것은?
① 수학의 프레디킷 해석에 기반을 두고 있다.
② 관계 데이터 모델의 제안자인 코드(Codd)가 관계 데이터베이스에 적용할 수 있도록 설계하여 제안하였다.
③ 튜플 관계해석과 도메인 관계해석이 있다.
④ 원하는 정보와 그 정보를 어떻게 유도하는가를 기술하는 절차적 특성을 가진다.
관계 해석은 사용자가 원하는 정보가 무엇인지만 기술하고,
그 정보를 어떻게 얻을지는 명시하지 않는 비절차적(Non-procedural) 언어이다.
④번의 설명은 관계 대수이다.
62. SELECT 문에 대한 설명으로 틀린 것은?
① DML에 해당하는 SQL 명령문이다.
② SELECT 절에 * 기호를 사용하면, 해당 테이블의 모든 열을 선택한다.
③ WHERE 절은 필수 구문이다.
④ 열의 값을 한 번만 선택할 때는 DISTINCT를 사용한다.
63. 데이터베이스 분할(Partitioning) 종류가 아닌 것은?
① Range Partition
② List Partition
③ Hash Partition
④ Relation Partition
Partitioning 유형
- 범위 분할, 목록 분할, 해시 분할, 조합 분할
64. 다음과 같은 일련의 권한 부여 SQL 명령에 대한 설명 중 부적합한 것은?
DBA) GRANT SELECT ON STUDENT T0 U1 WITH GRANT OPTION;
U1) GRANT SELECT ON STUDENT TO U2;
DBA) REVOKE SELECT ON STUDENT FROM U1 CASCADE
① U1은 STUDENT에 대한 검색 권한이 없다.
② DBA는 STUDENT에 대한 검색 권한이 있다.
③ U2는 STUDENT에 대한 검색 권한이 있다.
④ U2는 STUDENT에 대한 검색 권한을 다른 사용자에게 부여할 수 없다.
DBA) GRANT SELECT ON STUDENT TO U1 WITH GRANT OPTION;
DBA가 U1에게 STUDENT 테이블에 대한 SELECT 권한을 부여하고,
U1이 이 권한을 다른 사용자에게 다시 부여할 수 있는 권한(WITH GRANT OPTION)도 함께 부여한다.
U1) GRANT SELECT ON STUDENT TO U2;
U1은 부여받은 권한을 사용하여 U2에게 STUDENT 테이블에 대한 SELECT 권한을 부여한다.
이때 WITH GRANT OPTION은 부여하지 않았다.
DBA) REVOKE SELECT ON STUDENT FROM U1 CASCADE;
DBA가 U1에게 부여했던 STUDENT 테이블에 대한 SELECT 권한을 회수한다.
CASCADE 옵션이 사용되었으므로,
U1이 다른 사용자(여기서는 U2)에게 부여했던 동일한 권한(SELECT ON STUDENT)도 연쇄적으로 함께 회수된다.
65. 시스템 자신이 필요로 하는 여러 가지 객체에 관한 정보를 포함하고 있는 시스템 데이터베이스로서, 포함하고 있는 객체로는 테이블, 데이터베이스, 뷰, 접근권한 등이 있는 것은?
① 스키마(schema)
② 시스템 카탈로그(system catalog)
③ 관계(relation)
④ 도메인(domain)
66. 3단계 데이터베이스 구조 (3•Level Database Architecture)에서 공용의 의미보다는 어느 개인이나 특정 응용에 한정된 논리적 데이터 구조이며 데이터베이스의 개별 사용자나 응용 프로그래머가 접근하는 데이터베이스를 정의한 것은?
① 관계스키마
② 개념스키마
③ 외부스키마
④ 내부스키마
스키마 3계층
외부 스키마(External Schema) - 사용자나 응용 프로그래머가 접근할 수 있는 정의 기술을 의미한다. 개념 스키마(Conceptual Schema) - 범기관적 입장에서 데이터베이스를 정의한 것이다.
- 개체 간의 관계와 제약조건을 나타내고, 데이터베이스 접근 권한, 보안 및 무결성 규칙 명세가 있다.내부 스키마(Internal Schema) - 데이터의 실제 저장 방법 기술을 의미한다.
67. 데이터베이스에서 하나의 논리적 기능을 수행하기 위한 작업의 단위 또는 한꺼번에 모두 수행되어야 할 일련의 연산을 의미하는 것은?
① COLLISION
② BUCKET
③ SYNONYM
④ TRANSACTION
68. 릴레이션의 특징으로 옳지 않은 것은?
① 한 릴레이션에 포함된 튜플 사이에는 순서가 없다.
② 속성의 값은 물리적으로 더 이상 쪼갤 수 없는 원자 값이다.
③ 한 릴레이션에 포함된 튜플들은 모두 상이하다.
④ 한 릴레이션을 구성하는 속성들 사이의 순서는 순서는 큰 의미가 없다.
릴레이션의 특징
- 튜플의 유일성:모든 튜플은 서로 다른 값을 갖는다.
- 튜플의 무순서성:하나의 릴레이션에서 튜플의 순서는 없다.
- 속성의 원자성:속성값은 원자값을 갖는다.
- 속성의 무순서성:각 속성은 릴레이션 내에서 유일한 이름을 가지며, 속성의 순서는 큰 의미가 없다.
69. 여러 사용자 또는 프로세스가 동시에 데이터베이스에 접근할 때 일관성을 유지하고 충돌을 방지하기 위한 제어 메커니즘을 의미하는 용어는?
① Concurrency Control
② Backup
③ Normalization
④ Transaction
동시성 제어(Concurrency Control): 여러 사용자가 동시에 DB에 접근할 때 데이터의 일관성을 유지하고 충돌을 막는 기법.
정규화(Normalization): DB 설계 시 데이터 중복을 줄이고 일관성을 높이기 위해 테이블 구조를 체계화하는 작업.
트랜잭션(Transaction): DB 작업의 논리적 단위로, 모든 작업이 성공하거나 모두 실패해야 하며(원자성), 일관성, 고립성, 영구성(ACID)을 보장해야 함.
70. 외래키에 대한 설명으로 옳지 않은 것은?
① 외래키는 현실 세계에 존재하는 개체 타입들 간의 관계를 표현하는데 중요한 역할을 수행한다.
② 외래키로 지정되면 참조 릴레이션의 기본 키에 없는 값은 입력할 수 없다.
③ 외래키를 포함하는 릴레이션이 참조 릴레이션이 되고, 대응되는 기본 키를 포함하는 릴레이션이 참조하는 릴레이션이 된다.
④ 참조 무결성 제약조건과 밀접한 관계를 가진다.
외래키를 포함하는 릴레이션이 참조하는 릴레이션이 되고,
대응되는 기본 키를 포함하는 릴레이션이 참조되는 릴레이션(Referenced Relation)이 된다.
③번은 서로 뒤바뀌었다.
71. SQL의 명령은 사용 용도에 따라 DDL, DML, DCL로 구분할 수 있다. DML에 해당하는 것으로만 나열된 것은?
① UPDATE ② SELECT ③ INSERT ④ GRANT ⑤ ALTER ⑥ DROP
① ①, ②, ③
② ①, ②, ④
③ ①, ③, ④
④ ①, ②, ③, ④
- DDL의 종류 : CREATE, DROP, ALTER (크드알)
- DML의 종류 : SELECT, INSERT, DELETE, UPDATE (셀인딜업)
- DCL 의 종류 : GRANT, REVOKE, COMMIT, ROLLBACK
72. 다음 질의에 대한 SQL 문은?
「프로젝트번호(PNO) 1, 2, 3 에서 일하는 사원의 주민등록번호(JUNO)를 검색하라.」 (단, 사원 테이블(WORKS)은 프로젝트번호(PNO), 주민등록번호(JUNO) 필드로 구성된다.)
① SELECT WORKS FROM JUNO WHERE PNO IN 1, 2, 3;
② SELECT WORKS FROM JUNO WHERE PNO ON 1, 2, 3;
③ SELECT JUNO FROM WORKS WHERE PNO IN (1, 2, 3);
④ SELECT JUNO FROM WORKS WHERE PNO ON (1, 2, 3);
73. 트랜잭션이 부분 완료(partial commit) 상태에 도달하였다가 실패(fail) 상태로 가는 경우에 해당하는 것은?
① 사용자의 인터럽트
② 교착상태(deadlock) 발생
③ 트랜잭션 프로그램의 논리 오류
④ 디스크 출력 도중의 하드웨어 장애
75. 다음 SQL 문의 빈칸에 들어갈 내용은?
update 직원 ( ) 급여 = 급여 * 1.1 ( ) 급여 <= 100000 or 입사일 〈 20230101;
① into, where
② set, where
③ set, having
④ set, order by
76. 뷰에 대한 설명으로 옳지 않은 것은?
① 뷰는 삽입, 삭제, 갱신 연산에 제약사항이 따른다.
② 뷰는 데이터 접근 제어로 보안을 제공한다.
③ 뷰는 일반 사용자가 수정할 수 있다.
④ 뷰는 데이터의 논리적 독립성을 제공한다.
77. 제2정규형(2NF)에서 제3정규형(3NF)이 되기 위한 조건은?
① 이행적 함수 종속 제거
② 부분적 함수 종속 제거
③ 다치 종속 제거
④ 조인 종속 제거
2NF -> 3NF : 이행함수 종속 제거
78. 분산시스템에 대한 설명으로 거리가 먼 것은?
① 다수의 사용자들이 데이터를 공유할 수 있다.
② 다수의 사용자들 간에 통신이 용이하다.
③ 귀중한 장치들이 다수의 사용자들에 의해 공유될 수있다.
④ 집중형(centralized) 시스템에 비해 소프트웨어의 개발이 용이하다.
79. 데이터베이스에서 개념적 설계 단계에 대한 설명으로 틀린 것은?
① 산출물로 ER-D가 만들어진다.
② DBMS에 독립적인 개념 스키마를 설계한다.
③ 트랜잭션 인터페이스를 설계한다.
④ 논리적 설계 단계의 앞 단계에서 수행된다.
트랜잭션 인터페이스는 논리적 설계나 물리적 설계 단계에서 이루어진다.
80. 데이터베이스에서 병행제어의 목적으로 틀린 것은?
① 시스템 활용도 최대화
② 사용자에 대한 응답 시간 최소화
③ 데이터베이스 공유 최소화
④ 데이터베이스 일관성 유지
81. 릴레이션의 R의 차수가 3이고 카디널리티가 3이며, 릴레이션의 S의 차수가 4이고 카디널리티가 4일 때, 두 개의 릴레이션을 카티션 프로덕트한 결과의 새로운 릴레이션의 차수와 카디널리티는 얼마인가?
① 7, 7
② 12, 7
③ 7, 12
④ 12, 12
- Cartesian Product(교차곱)의 결과 릴레이션은
두 릴레이션의 속성의 개수는 더하고 각 튜플의 개수는 곱한 크기의 결과 릴레이션이 생성된다.
82. 다음 두 릴레이션에서 외래키로 사용된 것은? (단, 밑 줄 친 속성은 기본키)
제품(제품코드, 제품명, 단가, 구입처)
판매(판매코드, 판매처, 제품코드, 수량)
① 제품코드
② 제품명
③ 판매코드
④ 판매처
83. 데이터베이스 분할(Partitioning)에 대한 설명으로 틀린 것은?
① 테이블 분할은 대량의 데이터를 처리하고 성능을 향상시키기 위해 테이블을 논리적 또는 물리적으로 분할하는 과정이다.
② 수평 분할, 수직 분할, 조인 분할 방식이 있다.
③ 테이블 분할은 성능 향상, 데이터 관리, 보안, 유지 보수 등의 측면에서도 이점을 제공한다.
④ 테이블의 열(column)을 기준으로 논리적 또는 물리적으로 나누어 여러 개의 파티션으로 구성하는 방식을 수평 분할이라 한다.
열을 기준으로 나누는 방식 : 수직 분할
행을 기준으로 나누는 방식 : 수평 분할
84. 다음에 주어진 제약조건과 키의 빈칸을 알맞게 채운 것은?

㉠ ㉡
① 기본키 기본키
② 기본키 외래키
③ 외래키 기본키
④ 외래키 기본키
85. 스키마의 종류 중 조직이나 기관의 총괄적 입장에서 본 데이터베이스의 전체적인 논리적 구조로서 모든 응용 프로그램이나 사용자들이 필요로 하는 데이터를 종합한 조직 전체의 데이터베이스 구조를 의미하는 것은?
① 관계스키마
② 외부스키마
③ 내부스키마
④ 개념스키마
개념 스키마 : 데이터베이스의 전체적 논리 구조 정의
86. 물리적 데이터베이스 설계에 대한 설명으로 거리가 먼 것은?
① 물리적 설계의 목적은 효율적인 방법으로 데이터를 저장하는 것이다.
② 트랜잭션 처리량과 응답 시간, 디스크 용량 등을 고려해야 한다.
③ 저장 레코드의 형식, 순서, 접근 경로와 같은 정보를 사용하여 설계한다.
④ 트랜잭션의 인터페이스를 설계하며, 데이터 타입 및 데이터 타입들 간의 관계로 표현한다.
④번의 설명은 논리적 설계 단계에서 수행
물리적 설계
- 목표 DBMS에 종속적인 물리적 구조 설계
- 저장 레코드 양식 설계
- 레코드 집중의 분석/설계
- 접근 경로 설계
- 트랜잭션 세부 설계
87. 순서가 A, B, C, D 로 정해진 입력 자료를 스택에 입력하였다가 출력한 결과로 가능한 것이 아닌 것은?
① A, D, B, C
② D, C, B, A
③ B, C, D, A
④ C, B, A, D
88. 트랜잭션의 특성 중 둘 이상의 트랜잭션이 동시에 병행 실행되는 경우 어느 하나의 트랜잭션 실행 중에 다른 트랜잭션의 연산이 끼어들 수 없음을 의미하는 것은?
① atomicity
② consistency
③ isolation
④ durability
둘 이상의 트랜잭션이 동시에 병행 실행되는 경우 어느 하나의 트랜잭션 실행 중에 다른 트랜잭션의 연산이 끼어들 수 없음은
트랜잭션의 격리성 특성을 설명한다.
89. 장비 고장 또는 기타 재해 발생 시 데이터베이스를 보존하기 위한 데이터베이스 복사 활동을 의미하는 용어는?
① Concurrency Control
② Backup
③ Normalization
④ Transaction
90. 다음과 같이 결정자이면서 후보키가 아닌 것을 제거한 정규화는?

① 2NF
② 3NF
③ BCNF
④ 4NF
BCNF : 결정자가 후보키가 아닌 함수 종속 제거
2NF -> 3NF : 이행함수 종속 제거
91. DDL에 해당하는 SQL 명령으로만 나열된 것은?
① DELETE, UPDATE, CREATE
② CREATE, ALTER, DROP
③ INSERT, DELETE, UPDATE
④ SELECT, INSERT, ALTER
- DDL의 종류 : CREATE, DROP, ALTER (크드알)
- DML의 종류 : SELECT, INSERT, DELETE, UPDATE (셀인딜업)
- DCL 의 종류 : GRANT, REVOKE, COMMIT, ROLLBACK
92. 다음 표와 같은 판매실적 테이블에 대하여 서울지역에 한하여 판매액 내림차순으로 지점명과 판매액을 출력하고자 한다. 가장 적정한 SQL 구문은?
[테이블명 : 판매실적]

① SELECT 지점명, 판매액 FROM 판매실적 WHERE 도시=“서울” ORDER BY 판매액 DESC;
② SELECT 지점명, 판매액 FROM 판매실적 ORDER BY 판매액 DESC;
③ SELECT 지점명, 판매액 FROM 판매실적 WHERE 도시=“서울” ASC;
④ SELECT * FROM 판매실적 WHEN 도시=“서울” ORDER BY 판매액 DESC;
93. 트랜잭션을 수행하는 도중 장애로 인해 손상된 데이터베이스를 손상되기 이전의 정상적인 상태로 복구시키는 작업은?
① Recovery
② Commit
③ Abort
④ Restart
94. 다음과 같은 조건을 검색하는 SQL 명령문은?
- 부서번호가 D1, D2, D3인 사원의 사원명을 검색하시오(IN연산자를 반드시 사용하시오).
- 사원 테이블(TBL)은 사원명(ENAME) 속성과 부서번호(DNO) 속성으로 구성되어 있다.
① SELECT ENAME, DNO FROM TBL WHERE DNO IN (‘D1’, ‘D2’, ‘D3’);
② SELECT ENAME FROM TBL WHERE DNO IN (‘D1’, ‘D2’, ‘D3’);
③ SELECT ENAME WHERE DNO IN (‘D1’, ‘D2’, ‘D3’);
④ SELECT ENAME FROM DNO WHERE DNO IN (‘D1’, ‘D2’, ‘D3’);
95. 릴레이션 조작 시 데이터들이 불필요하게 중복되어 예기치 않게 발생하는 곤란한 현상을 의미하는 것은?
① normalization
② rollback
③ cardinality
④ anomaly
96. 집합 연산에 대한 설명으로 옳지 않은 것은?
① UNION 연산과 UNION ALL 연산은 여러 SQL문의 결과에 대한 합집합을 수행한다.
② UNION 연산은 중복된 행을 제거한 뒤 두 테이블을 합쳐준다.
③ INTERSECT 연산은 JOIN 연산으로 동일한 수행 결과를 얻을 수 있다.
④ EXCEPT(MINUS) 연산은 여러 SQL문의 결과에 대한 교집합을 수행한다.
EXCEPT(MINUS) 연산은 두 SQL문의 결과 중
첫 번째 결과에는 존재하고 두 번째 결과에는 존재하지 않는 행(차집합)을 반환하는 연산이다.
97. 분산 시스템의 투명성(transparcncy)에 관한 설명으로 옳지 않은 것은?
① 위치 투명성은 하드웨어와 소프트웨어의 물리적 위치를 사용자가 알 필요가 없다.
② 이주 투명성은 자원들이 한 곳에서 다른 곳으로 이동하면 자원들의 이름도 자동으로 바꾸어진다.
③ 복제 투명성은 사용자에게 통지 할 필요 없이 시스템 안에 파일들과 자원들의 부가적인 복사를 자유로이 할 수 있다.
④ 병행 투명성은 다중 사용자들이 자원들을 자동으로 공유할 수 있다.
분산데이터베이스의 목표 : 위중병장
위치 투명성 (Location Transparency) 하드웨어와 소프트웨어의 물리적 위치를 사용자가 알 필요가 없다. 중복 투명성 (Replication Transparency) 시스템 안에 파일들과 자원들의 부가적인 복사를 자유롭게할수 있다. 병행 투명성 (Concurrency Transparency) 다중 사용자들이 자원들을 자동으로 공유할 수 있다. 장애 투명성 (Failure Transparency) 사용자들은 어느 위치의 시스템에 장애가 발생했는지 알 필요가 없다.
98. 정규화에 대한 설명으로 적절하지 않은 것은?
① 데이터베이스의 개념적 설계 단계 이전에 수행한다.
② 데이터 구조의 안정성을 최대화한다.
③ 중복을 배제하여 삽입, 삭제, 갱신 이상의 발생을 방지한다.
④ 데이터 삽입 시 릴레이션을 재구성할 필요성을 줄인다.
정규화는 개념적 설계 단계 이후 논리적 설계단계에서 수행한다.
99. 개체-관계 모델(E-R Model)에 대한 설명으로 옳지 않은 것은?
① 특정 DBMS를 고려한 것은 아니다.
② E-R 다이어그램에서 개체 타입은 사각형, 관계 타입은 타원, 속성은 다이아몬드로 나타낸다.
③ 개체 타입과 관계 타입을 기본 개념으로 현실 세계를 개념적으로 표현하는 방법이다.
④ 1976년 Peter Chen이 제안하였다.
E-R 다이어그램
개체(Entity) - 사각형
속성(Attribute) - 타원
관계(Relationship) - 마름모
개체타입과 속성 연결 - 선
100. 관계대수와 관계해석에 대한 설명으로 옳지 않은 것은?
① 관계대수는 원하는 정보가 무엇이라는 것만 정의하는 비절차적 특징을 가지고 있다.
② 기본적으로 관계대수와 관계해석은 관계 데이터베이스를 처리하는 기능과 능력면에서 동등하다.
③ 관계해석에는 튜플 관계해석과 도메인 관계해석이 있다.
④ 관계해석은 수학의 프레디킷 해석(Predicate Calculus)에 기반을 두고 있다.
관계대수는 질의에 대한 해를 구하기 위해 수행해야 할 연산의 순서와 방법을 명시하는 절차적 언어이다.
101. 트랜잭션의 상태 중 트랜잭션의 마지막 연산이 실행된 직후의 상태로, 모든 연산의 처리는 끝났지만 트랜잭션이 수행한 최종 결과를 데이터베이스에 반영하지 않은 상태는?
① Active
② Partially Committed
③ Committed
④ Aborted
102. SQL은 사용 용도에 따라 DDL, DML, DCL로 구분할 수 있다. 다음 중 성격이 다른 하나는?
① UPDATE
② SELECT
③ INSERT
④ CREATE
- DDL의 종류 : CREATE, DROP, ALTER (크드알)
- DML의 종류 : SELECT, INSERT, DELETE, UPDATE (셀인딜업)
- DCL 의 종류 : GRANT, REVOKE, COMMIT, ROLLBACK
103. 분산 데이터베이스 시스템(Distributed Database System)에 대한 설명으로 틀린 것은?
① 분산 데이터베이스는 논리적으로는 하나의 시스템에 속하지만 물리적으로는 여러 개의 컴퓨터 사이트에 분산되어 있다.
② 위치 투명성, 중복 투명성, 병행 투명성, 장애 투명성을 목표로 한다.
③ 데이터베이스의 설계가 비교적 어렵고, 개발 비용과 처리 비용이 증가한다는 단점이 있다.
④ 분산 데이터베이스 시스템의 주요 구성 요소는 분산 처리기, P2P 시스템, 단일 데이터베이스 등이 있다.
분산 데이터베이스 시스템의 주요 구성 요소
여러 개의 데이터베이스 사이트(nodes)와 이들을 연결하는 통신 네트워크,
그리고 분산 데이터베이스 관리 시스템(Distributed DBMS) 등으로 구성되어 있다.
P2P시스템과 단일 데이터베이스는 주요 구성 요소로 볼 수 없다.
104. 관계 데이터베이스인 테이블 R1에 대한 아래 SQL문의 실행 결과로 옳은 것은?
[R1]

[SQL문]
SELECT 주소 FROM R1 GROUP BY 주소 HAVING COUNT(*)>=2;

105. 데이터베이스 설계 시 논리적 설계 단계에 대한 설명으로 옳지 않은 것은?
① 사용자의 요구에 대한 트랜잭션을 모델링한다.
② 트랜잭션 인터페이스를 설계한다.
③ 관계형 데이터베이스에서는 테이블을 설계하는 단계이다.
④ DBMS에 맞는 논리적 스키마를 설계한다.
①번은 요구사항 분석 단계 또는 개념적 설계 단계에서 수행된다.
106. 데이터베이스의 ACID에 대한 설명으로 가장 옳지 않은 것은?
① A : Atomicity(원자성)의 의미이며 트랜잭션과 관련된 작업들이 부분적으로 실행되다가 중단되지 않는 것을 보장하는 것을 말한다.
② C : Consistency(일관성)의 의미로 트랜잭션 실행을 성공적으로 완료하면 언제나 일관성 있는 DB 상태로 유지하는 것을 말한다.
③ I : Isolation(고립성)의 의미로 트랜잭션 수행 시 다른 트랜잭션 연산 작업이 중간에 개입되지 못하도록 보장하는 것을 말한다.
④ D : Dictation(사전)의 의미로 데이터베이스가 사전의 구조를 가지는 것을 의미한다.
트랜잭션의 특성
- 원자성(Atomicity) : 완전하게 수행 완료되지 않으면 전혀 수행되지 않아야 함
- 일관성(Consistency) : 시스템의 고정 요소는 트랜잭션 수행 전후에 같아야 함
- 격리성(Isolation, 고립성) : 트랜잭션 실행 시 다른 트랜잭션의 간섭을 받지 않아야 함
- 영속성(Durability, 지속성) : 트랜잭션의 완료 결과가 데이터베이스에 영구히 기억됨
107. 데이터베이스 시스템에서 삽입, 갱신, 삭제 등의 이벤트가 발생할 때마다 관련 작업이 자동으로 수행되는 절차형 SQL은?
① 트리거(trigger)
② 무결성(integrity)
③ 잠금(lock)
④ 복귀(rollback)
108. 릴레이션의 특징으로 옳은 내용 모두를 나열한 것은?
㉠ 모든 튜플은 서로 다른 값을 갖는다.
㉡ 각 속성은 중복된 이름을 가질 수 있으며, 속성의 순서는 중요하다.
㉢ 튜플 사이에는 순서가 없다.
㉣ 모든 속성값은 원자 값이다.
① ㉠, ㉡
② ㉠, ㉡, ㉣
③ ㉠, ㉢, ㉣
④ ㉠, ㉡, ㉢, ㉣
릴레이션의 특징
- 튜플의 유일성:모든 튜플은 서로 다른 값을 갖는다.
- 튜플의 무순서성:하나의 릴레이션에서 튜플의 순서는 없다.
- 속성의 원자성:속성값은 원자값을 갖는다.
- 속성의 무순서성:각 속성은 릴레이션 내에서 유일한 이름을 가지며, 속성의 순서는 큰 의미가 없다.
109. SQL 명령어 중 TRUNCATE와 DELETE에 대한 설명으로 옳지 않은 것은?
① TRUNCATE는 Auto Commit이 수행되어 Rollback이 가능하다.
② TRUNCATE와 DELETE는 DROP과는 다르게 테이블의 데이터만 삭제한다.
③ DELETE는 테이블의 데이터만 삭제하며 삭제된 디스크 공간의 용량은 줄어들지 않는다.
④ TRUNCATE는 테이블의 데이터 삭제시 WHERE 조건절은 사용할 수 없지만 DELETE보다 처리 속도가 빠르다.
TRUNCATE는 실행 시 자동으로 커밋(Auto Commit)이 수행되어 롤백(Rollback)이 불가능하다.
110. 관계 데이터 모델, 계층 데이터 모델, 네트워크 데이터 모델의 가장 큰 차이점은 무엇인가?
① 개체의 표현 방법
② 속성의 표현 방법
③ 관계의 표현 방법
④ 데이터 저장 방법
111. 학생 테이블에서 성명에 ‘정’이 포함된 튜플을 검색하는 SQL 명령문은?
① SELECT * FROM 학생 WHERE 성명 LIKE ‘정%’;
② SELECT * FROM 학생 WHERE 성명 LIKE ‘%정’;
③ SELECT * FROM 학생 WHERE 성명 LIKE ‘%정%’;
④ SELECT * FROM 학생 WHERE 성명 LIKE ‘_정_’;
112. 다음 SQL 명령문에 대한 설명으로 가장 옳지 않은 것은?
ALTER TABLE 학생 DROP COLUMN 지도교수 CASCADE;
① 학생 테이블의 지도교수 컬럼의 제약조건을 삭제한다.
② 학생 테이블의 지도교수 컬럼을 삭제하며 참조되는 다른 테이블의 지도교수 컬럼까지 연쇄삭제 한다.
③ 학생 테이블의 지도교수 컬럼을 수정한다.
④ 학생 테이블의 지도교수 컬럼을 제한적으로 삭제한다.
113. SQL View(뷰)에 대한 설명으로 틀린 것은?
① 뷰(View)를 제거하고자 할때는 DROP 문을 이용한다.
② 뷰(View)의 정의를 변경하고자 할 때는 ALTER 문을 이용한다.
③ 뷰(View)를 생성하고자 할때는 CREATE 문을 이용한다.
④ 뷰(View)의 내용을 검색하고자 할때는 SELECT 문을 이용한다
뷰(VIEW)는 기본 테이블과 달리 ALTER 문을 사용하여 정의를 변경할 수 없다.
114. 병행제어의 로킹(Locking) 단위에 대한 설명으로 옳지 않은 것은?
① 데이터베이스, 파일, 레코드 등은 로킹 단위가 될 수 있다.
② 로킹 단위가 작아지면 로킹 오버헤드가 증가한다.
③ 한꺼번에 로킹할 수 있는 단위를 로킹 단위라고 한다.
④ 로킹 단위가 작아지면 병행성 수준이 낮아진다.
로킹 단위가 작아지면 다른 트랜잭션이 동시에 접근할 수 있는 데이터의 범위가 넓어져 병행성 수준이 높아진다.
115. 다른 관계에 존재하는 튜플을 참조하기 위해 사용되는 속성의 값은 참조되는 테이블의 튜플 중에 해당 속성에 대해 같은 값을 갖는 튜플이 존재해야 한다는 제약은?
① 개체무결성 제약
② 주소무결성 제약
③ 참조무결성 제약
④ 도메인 제약
116. 정규형에 대한 설명으로 옳지 않은 것은?
① 어떠한 릴레이션이라도 데이터베이스 내에서 표현 가능하게 만든다.
② 데이터 삽입 시 릴레이션을 재구성할 필요성을 줄인다.
③ 중복을 배제하여 삽입, 삭제, 갱신 이상의 발생을 야기한다.
④ 효과적인 검색 알고리즘을 생성할 수 있다.
117. 트랜잭션의 정의 및 특징이 아닌 것은?
① 한꺼번에 수행 되어야할 일련의 데이터베이스 연산집합
② 사용자의 시스템에 대한 서비스 요구 시 시스템의 상태변환 과정의 작업 단위
③ 병행 제어 및 회복 작업의 논리적 작업 단위
④ 트랜잭션의 연산이 데이터베이스에 모두 반영되지 않고 일부만 반영시키는 원자성의 성질
118. 다음 질의어를 SQL 문장으로 바르게 나타낸 것은?
"부서번호가 널(NULL)인 사원번호와 이름을 검색하라."
① SELECT 사원번호, 이름 FROM 직원 WHERE 부서번호 = NULL;
② SELECT 사원번호, 이름 FROM 직원 WHERE 부서번호 <> NULL;
③ SELECT 사원번호, 이름 FROM 직원 WHERE 부서번호 IS NULL;
④ SELECT 사원번호, 이름 FROM 직원 WHERE 부서번호 = " ";
119. 로킹기법에서 2단계 로킹 규약(2PLP)에 대한 설명으로 옳은 것은?
① 트랜잭션은 look만 수행할 수 있고, unlook은 수행할 수 없는 확장단계가 있다.
② 트랜잭션이 unlook과 lock을 동시에 수행할 수 있는 단계를 병렬전환 단계라 한다.
③ 한 트랜잭션이 unlook 후 다른 데이터 아이템을 lock 할 수 있다.
④ 교착상태를 일으키지 않는다.
2PL (2 Phase Locking, 2단계 로킹 기법)
- 확장 단계와 축소단계 2단계로 구성된다.
- 트랜잭션은 lock만 수행할 수 있고, unlock은 수행할 수 없는 확장단계가 있다.
120. 관계 데이터베이스의 정규화에 대한 설명으로 옳지 않은 것은?
① 정규화를 거치지 않으면 여러 가지 상이한 종류의 정보를 하나의 릴레이션으로 표현하여 그 릴레이이션을 조작할 때 이상(Anomaly) 현상이 발생할 수 있다.
② 정규화의 목적은 각 릴레이션에 분산된 종속성을 하나의 릴레이션에 통합 하는 것이다.
③ 이상(Anomaly) 현상은 데이터들 간에 존재하는 함수 종속이 하나의 원인이 될 수 있다.
④ 정규화가 잘못되면 데이터의 불필요한 중복이 야기되어 릴레이션을 조작할 때 문제가 발생할 수 있다.
정규화의 목적
데이터 구조의 안정성 최대화와 중복 데이터의 최소화 ,수정, 삭제 시 이상 현상 최소화를 위해
릴레이션의 종속성을 분석해 릴레이션을 분해하는 것이다.
121. 다음의 관계 대수 문장을 SQL로 표현한 것으로 옳은 것은?

① SELECT name, dept FROM student HAVING year = 3;
② SELECT name, dept FROM student WHERE year = 3;
③ SELECT student FROM name, dept WHERE year = 3;
④ SELECT student FROM name, dept HAVING year = 3;
π : 조회할 필드명
σ : Select 문
122. 릴레이션의 특징으로 옳지 않은 것은?
① 모든 튜플은 서로 다른 값을 갖는다.
② 각 속성은 릴레이션 내에서 유일한 이름을 가지며, 속성의 순서는 큰 의미가 없다.
③ 하나의 릴레이션에서 튜플의 순서는 없다.
④ 한 릴레이션에 나타난 속성값은 논리적으로 더 이상 분해할 수 없는 원자값이어서는 안 된다.
릴레이션의 특징
- 튜플의 유일성:모든 튜플은 서로 다른 값을 갖는다.
- 튜플의 무순서성:하나의 릴레이션에서 튜플의 순서는 없다.
- 속성의 원자성:속성값은 원자값을 갖는다.
- 속성의 무순서성:각 속성은 릴레이션 내에서 유일한 이름을 가지며, 속성의 순서는 큰 의미가 없다.
123. 뷰(VIEW)에 대한 설명으로 옳지 않은 것은?
① 뷰의 정의 변경을 위해서는 ALTER 문을 이용한다.
② 뷰에 대한 조작은 기본 테이블 조작과 거의 동일하며, 삽입, 갱신, 삭제연산에는 제약이 따른다.
③ 뷰 위에 또 다른 뷰를 정의할 수 있다.
④ 뷰가 정의된 기본 테이블이 삭제되면 뷰도 자동적으로 삭제된다.
뷰(VIEW)의 정의를 변경하려면
기존 뷰를 DROP VIEW 명령으로 삭제한 후 CREATE VIEW 명령으로 새로운 정의를 다시 생성해야 한다.
124. 트랜잭션의 정의 및 특징이 아닌 것은?
① 한꺼번에 수행 되어야할 일련의 데이터베이스 연산집합
② 사용자의 시스템에 대한 서비스 요구 시 시스템의 상태변환 과정의 작업 단위
③ 병행 제어 및 회복 작업의 논리적 작업 단위
④ 트랜잭션의 연산이 데이터베이스에 모두 반영되지 않고 일부만 반영시키는 원자성의 성질
125. SQL의 명령을 사용 용도에 따라 DDL, DML, DCL로 구분할 경우, 그 성격이 나머지 셋과 다른 것은?
① SELECT
② ALTER
③ CREATE
④ DROP
- DDL의 종류 : CREATE, DROP, ALTER (크드알)
- DML의 종류 : SELECT, INSERT, DELETE, UPDATE (셀인딜업)
- DCL 의 종류 : GRANT, REVOKE, COMMIT, ROLLBACK
126. 다음 중 암호화 과정에 대한 설명으로 틀린 것은?
① 평문을 암호학적 방법으로 변환한 것을 암호문이라 한다.
② 암호학을 이용하여 보호해야 할 메시지를 평문이라 한다.
③ 암호화 알고리즘은 공개로 하기 보다는 개별적으로 해야 한다.
④ 암호문을 다시 평문으로 변환하는 과정을 복호화라 한다.
케르크호프의 원리에 따라 암호화 알고리즘은 공개되어도 안전해야 하며,
오직 비밀 키(secret key)의 비밀성에만 보안이 의존해야 한다.
127. 다음 중 파일 구조가 아닌 것은?
① Sequential File
② Indexed Sequential File
③ Direct File
④ Recurcive File
일반적인 파일 구조 : 순차 파일, 인덱스 순차 파일, 직접 파일
재귀 파일 : 자체 자신을 참조하는 파일이고 파일 시스템에서 허용되지 않으므로 파일 구조로 사용할 수 없다.
128. 데이터 모델이 포함하는 구성요소와 거리가 먼 것은?
① concept
② structure
③ operation
④ constraint
데이터 모델의 구성요소
- 데이터 구조, 연산, 제약 조건
129. STUDENT(SNO, SNAME, YEAR, DEPT) 테이블에 200번, 김길동, 2학년, 전산과 학생 튜플을 삽입하는 SQL 명령으로 옳은 것은?
① INSERT STUDENT INTO VALUES (200, '김길동', 2, '전산과');
② INSERT TO STUDENT VALUES (200, '김길동', '전산과', 2);
③ INSERT INTO STUDENT(SNO, SNAME, YEAR, DEPT) VALUES (200, '김길동', 2, '전산과');
④ INSERT TO STUDENT(SNO, SNAME, YEAR, DETP) VALUES (200, '김길동', 2, '전산과');
130. Linear Search의 평균 검색 회수는?
① n-1
② (n+1)/2
③ n
④ n/2
131. 다음 SQL 문의 빈칸에 들어갈 내용은?
update 직원 ( ) 급여 = 급여 * 1.1
where 급여 ≤ 100000 or 입사일〈19990101;
① into
② set
③ from
④ select
132. 다음 조건을 모두 만족하는 정규형은?
- 테이블 R에 속한 모든 도메인이 원자값만으로 구성되어 있다.
- 테이블 R에서 키가 아닌 모든 필드가 키에 대해 함수적으로 종속되며, 키의 부분 집합이 결정자가 되는 부분 종속이 존재하지 않는다.
- 테이블 R에 존재하는 모든 함수적 종속에서 결정자가 후보키이다.
① BCNF
② 제1정규형
③ 제2정규형
④ 제3정규형
정규화 과정
1NF 도메인이 원자값 2NF 부분적 함수 종속 제거 3NF 이행적 함수 종속 제거 BCNF 결정자 이면서 후보키가 아닌 함수 종속 제거 4NF 다치 종속 제거 5NF 조인 종속성 제거
133. 데이터베이스의 트랜잭션 성질들 중에서 다음 설명에 해당하는 것은?
트랜잭션의 모든 연산들이 정상적으로 수행완료되거나 아니면 전혀 어떠한 연산도 수행되지 않은 원래 상태가 되도록 해야한다.
① Atomicity
② Consistency
③ Isolation
④ Durability
134. 분산 데이터베이스 시스템과 관련한 설명으로 틀린 것은?
① 물리적으로 분산된 데이터베이스 시스템을 논리적으로 하나의 데이터베이스 시스템처럼 사용할 수 있도록 한 것이다.
② 물리적으로 분산되어 지역별로 필요한 데이터를 처리할 수 있는 지역 컴퓨터(Local Computer)를 분산 처리기(Distributed Processor)라고 한다.
③ 분산 데이터베이스 시스템을 위한 통신 네트워크 구조가 데이터 통신에 영향을 주므로 효율적으로 설계해야 한다.
④ 데이터베이스가 분산되어 있음을 사용자가 인식할 수 있도록 분산 투명성(Distribution Transparency)을 배제해야 한다.
사용자가 분산시스템이란 것을 인지 하지 못하도록 투명성을 지원해야 한다.
135. 다음 테이블을 보고 강남지점의 판매량이 많은 제품부터 출력되도록 할 때 다음 중 가장 적절한 SQL구문은? (단, 출력은 제품명과 판매량이 출력되도록한다.)

① SELECT 제품명, 판매량 FROM 푸드 ORDER BY 판매량 ASC;
② SELECT 제품명, 판매량 FROM 푸드 ORDER BY 판매량 DESC;
③ SELECT 제품명, 판매량 FROM 푸드 WHERE 지점명 = '강남지점’ ORDER BY 판매량 ASC;
④ SELECT 제품명, 판매량 FROM 푸드 WHERE 지점명 = '강남지점' ORDER BY 판매량 DESC;
136. 물리적 데이터베이스 구조의 기본 데이터 단위인 저장 레코드의 양식을 설계할 때 고려사항이 아닌 것은?
① 데이터 타입
② 데이터 값의 분포
③ 트랜잭션 모델링
④ 접근 빈도
트랜잭션을 모델링은 요구사항 분석 또는 개념적/논리적 설계에서 수행
137. SQL의 기능에 따른 분류 중에서 REVOKE문과 같이 데이터의 사용 권한을 관리하는데 사용하는 언어는?
① DDL(Data Definition Language)
② DML(Data Manipulation Language)
③ DCL(Data Control Language)
④ DUL(Data User Language)
- DDL의 종류 : CREATE, DROP, ALTER (크드알)
- DML의 종류 : SELECT, INSERT, DELETE, UPDATE (셀인딜업)
- DCL 의 종류 : GRANT, REVOKE, COMMIT, ROLLBACK
138. 데이터 사전에 대한 설명으로 틀린 것은?
① 시스템 카탈로그 또는 시스템 데이터베이스라고도 한다.
② 데이터 사전 역시 데이터베이스의 일종이므로 일반 사용자가 생성, 유지 및 수정할 수 있다.
③ 데이터베이스에 대한 데이터인 메타데이터(Metadata)를 저장하고 있다.
④ 데이터 사전에 있는 데이터에 실제로 접근하는데 필요한 위치 정보는 데이터 디렉토리(Data Directory)라는 곳에서 관리한다.
139. 데이터베이스에서 릴레이션에 대한 설명으로 틀린 것은?
① 모든 튜플은 서로 다른 값을 가지고 있다.
② 하나의 릴레이션에서 튜플은 특정한 순서를 가진다.
③ 각 속성은 릴레이션내에서 유일한 이름을 가진다.
④ 모든 속성 값은 원자 값(atomic value)을 가진다.
릴레이션의 특징
- 튜플의 유일성:모든 튜플은 서로 다른 값을 갖는다.
- 튜플의 무순서성:하나의 릴레이션에서 튜플의 순서는 없다.
- 속성의 원자성:속성값은 원자값을 갖는다.
- 속성의 무순서성:각 속성은 릴레이션 내에서 유일한 이름을 가지며, 속성의 순서는 큰 의미가 없다.
140. 데이터베이스에서의 뷰(View)에 대한 설명으로 틀린 것은?
① 뷰는 다른 뷰를 기반으로 새로운 뷰를 만들 수 있다.
② 뷰는 일종의 가상 테이블이며, update에는 제약이 따른다.
③ 뷰는 기본 테이블을 만드는 것처럼 create view를 사용하여 만들 수 있다.
④ 뷰는 논리적으로 존재하는 기본 테이블과 다르게 물리적으로만 존재하며 카탈로그에 저장된다.
뷰(View)는 물리적으로 존재하지 않는 가상의 테이블이다.
141. SQL의 명령을 사용 용도에 따라 DDL, DML, DCL로 구분할 경우, 그 성격이 나머지 셋과 다른 것은?
① SELECT
② UPDATE
③ INSERT
④ GRANT
- DDL의 종류 : CREATE, DROP, ALTER (크드알)
- DML의 종류 : SELECT, INSERT, DELETE, UPDATE (셀인딜업)
- DCL 의 종류 : GRANT, REVOKE, COMMIT, ROLLBACK
142. 키의 종류 중 유일성과 최소성을 만족하는 속성 또는 속성들의 집합은?
① Atomic key
② Super key
③ Candidate key
④ Test key
슈퍼키(Super Key)
- 두 개 이상의 속성으로 구성된 기본키
- 유일성은 만족시키지만, 최소성은 만족시키지 못한다.
후보키(Candidate Key)
- 모든 튜플들을 유일하게 식별할 수 있는 하나 또는 몇 개의 속성 집합을 의미한다.
- 유일성과 최소성 모두 만족한다.
143. 테이블의 기본키로 지정된 속성에 관한 설명으로 가장 거리가 먼 것은?
① NOT NULL로 널 값을 가지지 않는다.
② 릴레이션에서 튜플을 구별할 수 있다.
③ 외래키로 참조될 수 있다.
④ 검색할 때 반드시 필요하다.
검색할 때 필요한 필드는 Index이다.
144. 데이터 모델의 구성 요소 중 데이터 구조에 따라 개념 세계나 컴퓨터 세계에서 실제로 표현된 값들을 처리하는 작업을 의미하는 것은?
① Relation
② Data Structure
③ Constraint
④ Operation
145. 다음 [조건]에 부합하는 SQL문을 작성하고자 할 때, [SQL문]의 빈칸에 들어갈 내용으로 옳은 것은? (단, '팀코드' 및 '이름'은 속성이며, '직원'은 테이블이다.)

① WHERE 이름 = '정도일'
② SELECT 팀코드 FROM 이름 WHERE 직원 = '정도일'
③ WHERE 직원 = '정도일'
④ SELECT 팀코드 FROM 직원 WHERE 이름 = '정도일’
146. 무결성 제약조건 중 개체 무결성 제약조건에 대한 설명으로 옳은 것은?
① 릴레이션 내의 튜플들이 각 속성의 도메인에 정해진 값만을 가져야 한다.
② 기본키는 NULL 값을 가져서는 안되며 릴레이션 내에 오직 하나의 값만 존재해야 한다.
③ 자식 릴레이션의 외래키는 부모 릴레이션의 기본키와 도메인이 동일해야 한다.
④ 자식 릴레이션의 값이 변경될 때 부모 릴레이션의 제약을 받는다.
147. 관계 데이터 모델에서 릴레이션(Relation)에 포함되어 있는 튜플(Tuple)의 수를 무엇이라고 하는가?
① Degree
② Cardinality
③ Attribute
④ Cartesian product
- 디그리(Degree) : 속성의 수(차수)
- 카디널리티(Cardinality) : 튜플의 수(기수)
148. 사용자 'PARK'에게 테이블을 생성할 수 있는 권한을 부여하기 위한 SQL문의 구성으로 빈칸에 적합한 내용은?
GRANT ( ) PARK;
① CREATE TABLE TO
② CREATE TO
③ CREATE FROM
④ CREATE TABLE FROM
149. 어떤 릴레이션 R의 모든 조인 종속성의 만족이 R의 후보 키를 통해서만 만족될 때, 이 릴레이션 R이 해당하는 정규형은?
① 제5정규형
② 제4정규형
③ 제3정규형
④ 제1정규형
정규화 과정
1NF 도메인이 원자값 2NF 부분적 함수 종속 제거 3NF 이행적 함수 종속 제거 BCNF 결정자 이면서 후보키가 아닌 함수 종속 제거 4NF 다치 종속 제거 5NF 조인 종속성 제거
150. E-R 모델에서 다중값 속성의 표기법은?

151. 다른 릴레이션의 기본키를 참조하는 키를 의미하는 것은?
① 필드키
② 슈퍼키
③ 외래키
④ 후보키
152. 관계 해석에서 ‘모든 것에 대하여’의 의미를 나타내는 논리 기호는?
① ∃
② ∈
③ ∀
④ ⊂
관계 해석 자유 변수
∃ (There Exists) 존재 정량자(Existential Quantifier) 존재한다 ∈ (Element of) - ~의 원소이다, 속한다 ∀ (For All) 전칭 정량자(Universal Quantifier) 모든 또는 임의의 U (Union) 집합 연산 기호 합집합
153. 다음 릴레이션의 Degree와 Cardinality는?

① Degree : 4, Cardinality : 3
② Degree : 3, Cardinality : 4
③ Degree : 3, Cardinality : 12
④ Degree : 12, Cardinality : 3
- 카디널리티(Cardinality) : 튜플(행)의 수 (기수)
- 디그리(Degree) : 속성(열)의 수 (차수)
154. 뷰(View)에 대한 설명으로 틀린 것은?
① 뷰 위에 또 다른 뷰를 정의할 수 있다.
② DBA는 보안성 측면에서 뷰를 활용할 수 있다.
③ 사용자가 필요한 정보를 요구에 맞게 가공하여 뷰로 만들 수 있다.
④ SQL을 사용하면 뷰에 대한 삽입, 갱신, 삭제 연산 시 제약 사항이 없다.
모든 뷰가 삽입, 갱신, 삭제 연산이 가능한 것은 아니며,
특정 조건(예: 단일 테이블 기반, 그룹 함수 미사용 등) 하에서만 제한적으로 가능하다.
155. SQL과 관련한 설명으로 틀린 것은?
① REVOKE 키워드를 사용하여 열 이름을 다시 부여할 수 있다.
② 데이터 정의어는 기본 테이블, 뷰 테이블 또는 인덱스 등을 생성, 변경, 제거하는데 사용되는 명령어이다.
③ DISTINCT를 활용하여 중복 값을 제거할 수 있다.
④ JOIN을 통해 여러 테이블의 레코드를 조합하여 표현할 수 있다.
REVOKE : 데이터베이스 사용자의 사용 권한을 회수하는 명령어이다.
156. 다음 SQL문의 실행결과로 생성되는 튜플 수는?

① 1
② 3
③ 4
④ 5
157. 다음 SQL문에서 사용된 BETWEEN 연산의 의미와 동일한 것은?
SELECT *
FROM 성적
WHERE (점수 BETWEEN 90 AND 95)
AND 학과 = ‘컴퓨터공학과’;
① 점수 >= 90 AND 점수 <= 95
② 점수 > 90 AND 점수 < 95
③ 점수 > 90 AND 접수 <= 95
④ 점수 >= 90 AND 점수 < 95
BETWEEN A AND B : A이상 B이하
158. 트랜잭션의 상태 중 트랜잭션의 수행이 실패하여 Rollback 연산을 실행한 상태는?
① 철회(Aborted)
② 부분 완료(Partially Committed)
③ 완료(Commit)
④ 실패(Fail)
트랜잭션 상태
활동(active) 초기상태로 트랜잭션이 Begin_Trans에서 부터 실행을 시작하였거나 실행 중인 상태 부분 완료(partially commited) 트랜잭션의 마지막 연산이 실행된 직후의 상태로,
모든 연산의 처리는 끝났지만 트랜잭션이 수행한 최종 결과를 데이터베이스에 반영하지 않은 상태철회(aborted) 트랜잭션이 실행에 실패하여 Rollback 연산을 수행한 상태 완료(committed) 트랜잭션이 실행을 성공적으로 완료연산을 수행한 상태
159. 데이터 제어어(DCL)에 대한 설명으로 옳은 것은?
① ROLLBACK : 데이터의 보안과 무결성을 정의한다.
② COMMIT : 데이터베이스 사용자의 사용 권한을 취소한다.
③ GRANT : 데이터베이스 사용자에게 사용 권한을 부여한다.
④ REVOKE : 데이터베이스 조작 작업이 비정상적으로 종료되었을 때 원래 상태로 복구한다.
160. 데이터베이스에서 병행제어의 목적으로 틀린 것은?
① 시스템 활용도 최대화
② 사용자에 대한 응답시간 최소화
③ 데이터베이스 공유 최소화
④ 데이터베이스 일관성 유지
병행제어의 목적
- 데이터베이스 공유 최대화
- 데이터베이스 일관성 최대화
- 시스템 활용도 최대화
- 사용자에 대한 응답시간 최소화
161. 데이터의 중복으로 인하여 관계연산을 처리할 때 예기치 못한 곤란한 현상이 발생하는 것을 무엇이라 하는가?
① 이상(Anomaly)
② 제한 (Restriction)
③ 종속성(Dependency)
④ 변환(Translation)
162. 이전 단계의 정규형을 만족하면서 후보키를 통하지 않는 조인 종속(JD : Join Dependency) 제거해야 만족하는 정규형은?
① 제3정규형
② 제4정규형
③ 제5정규형
④ 제6정규형
정규화 과정
1NF 도메인이 원자값 2NF 부분적 함수 종속 제거 3NF 이행적 함수 종속 제거 BCNF 결정자 이면서 후보키가 아닌 함수 종속 제거 4NF 다치 종속 제거 5NF 조인 종속성 제거
163. SQL의 논리 연산자가 아닌 것은?
① AND
② OTHER
③ OR
④ NOT
164. 학적 테이블에서 전화번호가 Null 값이 아닌 학생명을 모두 검색할 때, SQL 구문으로 옳은 것은?
① SELECT 학생명 FROM 학적 WHERE 전화번호 DON'T NULL;
② SELECT 학생명 FROM 학적 WHERE 전화번호 !=NOT NULL;
③ SELECT 학생명 FROM 학적 WHERE 전화번호 IS NOT NULL;
④ SELECT 학생명 FROM 학적 WHERE 전화번호 IS NULL;
164. 다음 중 SQL에서의 DDL 문이 아닌 것은?
① CREATE
② DELETE
③ ALTER
④ DROP
- DDL의 종류 : CREATE, DROP, ALTER (크드알)
- DML의 종류 : SELECT, INSERT, DELETE, UPDATE (셀인딜업)
- DCL 의 종류 : GRANT, REVOKE, COMMIT, ROLLBACK
165. 트랜잭션의 주요 특성 중 하나로 둘 이상의 트랜잭션이 동시에 병행 실행되는 경우 어느 하나의 트랜잭션 실행 중에 다른 트랜잭션의 연산이 끼어들 수 없음을 의미하는 것은?
① Log
② Consistency
③ Isolation
④ Durability
166. 데이터베이스에서 인덱스(Index)와 관련한 설명으로 틀린 것은?
① 인덱스의 기본 목적은 검색 성능을 최적화하는 것으로 볼 수 있다.
② B-트리 인덱스는 분기를 목적으로 하는 Branch Block을 가지고 있다.
③ BETWEEN 등 범위(Range) 검색에 활용될 수 있다.
④ 시스템이 자동으로 생성하여 사용자가 변경할 수 없다.
167. 관계 대수에 대한 설명으로 틀린 것은?
① 원하는 릴레이션을 정의하는 방법을 제공하며 비절차적 언어이다.
② 릴레이션 조작을 위한 연산의 집합으로 피연산자와 결과가 모두 릴레이션이다.
③ 일반 집합 연산과 순수 관계 연산으로 구분된다.
④ 질의에 대한 해를 구하기 위해 수행해야 할 연산의 순서를 명시한다.
관계대수(Relational Algebra)
- 원하는 정보와 그 정보를 어떻게 유도하는가를 기술 하는 절차적인 방법이다.
168. 관계 데이터베이스에 있어서 관계 대수 연산이 아닌 것은?
① 디비전(Division)
② 프로젝트(Project)
③ 조인(Join)
④ 포크(Fork)
순수 관계 연산자 - 선프조디
Select, Project, Join, Division
169. 데이터베이스의 무결성 규정(Integrity Rule)과 관련한 설명으로 틀린 것은?
① 무결성 규정에는 데이터가 만족해야 될 제약 조건, 규정을 참조할 때 사용하는 식별자 등의 요소가 포함될 수 있다.
② 무결성 규정의 대상으로는 도메인, 키, 종속성 등이 있다.
③ 정식으로 허가 받은 사용자가 아닌 불법적인 사용자에 의한 갱신으로부터 데이터베이스를 보호하기 위한 규정이다.
④ 릴레이션 무결성 규정(Relation Integrity Rules)은 릴레이션을 조작하는 과정에서의 의미적 관계(Semantic Relationship)를 명세한 것이다.
③번은 DB 보안에 관련된 내용이다.
170. 병행제어 기법의 종류가 아닌 것은?
① 로킹 기법
② 시분할 기법
③ 타임 스탬프 기법
④ 다중 버전 기법
병행 제어(Concurrency Control)의 종류
로킹, 최적 병행수행, 타임 스탬프, 다중 버전 기법
172. SQL에서 VIEW를 삭제할 때 사용하는 명령은?
① ERASE
② KILL
③ DROP
④ DELETE
뷰(View)특징
- 뷰의 생성 시 CREATE 문, 검색 시 SELECT 문을 사용한다.
- 뷰의 정의 변경시 ALTER문을 사용할 수 없고 DROP 문을 이용한다.
- 뷰를 이용한 또 다른 뷰의 생성이 가능하다.
173. 트랜잭션의 실행이 실패하였음을 알리는 연산자로 트랜잭션이 수행한 결과를 원래의 상태로 원상 복귀 시키는 연산은?
① COMMIT 연산
② BACKUP 연산
③ LOG 연산
④ ROLLBACK 연산
174. DDL(Data Define Language)의 명령어 중 스키마, 도메인, 인덱스 등을 정의할 때 사용하는 SQL문은?
① ALTER
② SELECT
③ CREATE
④ INSERT
- DDL의 종류 : CREATE, DROP, ALTER (크드알)
- DML의 종류 : SELECT, INSERT, DELETE, UPDATE (셀인딜업)
- DCL 의 종류 : GRANT, REVOKE, COMMIT, ROLLBACK
175. 데이터 속성 간의 종속성에 대한 엄밀한 고려 없이 잘못 설계된 데이터베이스에서는 데이터 처리 연산 수행 시 각종 이상 현상이 발생할 수 있는데, 이러한 이상 현상이 아닌 것은?
① 검색이상
② 삽입이상
③ 삭제이상
④ 갱신이상
이상현상 종류 - 삽삭갱
삽입이상, 삭제이상, 갱신이상
176. 병렬 데이터베이스 환경 중 수평분할에서 활용되는 분할 가법이 아닌 것은?
① 라운드-로빈
② 범위 분할
③ 예측 분할
④ 해시 분할
177. 관계형 데이터 모델의 릴레이션에 대한 설명으로 틀린 것은?
① 모든 속성 값은 원자 값을 갖는다.
② 한 릴레이션에 포함된 튜플은 모두 상이하다.
③ 한 릴레이션에 포함된 튜플 사이에는 순서가 없다.
④ 한 릴레이션을 구성하는 속성 사이에는 순서가 존재한다.
릴레이션의 특징
- 튜플의 유일성:모든 튜플은 서로 다른 값을 갖는다.
- 튜플의 무순서성:하나의 릴레이션에서 튜플의 순서는 없다.
- 속성의 원자성:속성값은 원자값을 갖는다.
- 속성의 무순서성:각 속성은 릴레이션 내에서 유일한 이름을 가지며, 속성의 순서는 큰 의미가 없다.
178. 속성(attribute)에 대한 설명으로 틀린 것은?
① 속성은 개체의 특성을 기술한다.
② 속성은 데이터베이스를 구성하는 가장 작은 논리적 단위이다.
③ 속성은 파일 구조상 데이터 항목 또는 데이터 필드에 해당된다.
④ 속성의 수를 "cardinality"라고 한다.
- 차수(Degree) : 속성의 수(애트리뷰트) - 차애
- 카디널리티(Cardinality) : 튜플의 수(기수) - 카튜
179. 다음 릴레이션의 카디널리티와 차수가 옳게 나타낸 것은?

① 카디널리티: 4, 차수: 4
② 카디널리티: 4, 차수: 6
③ 카디널리티: 6, 차수: 4
④ 카디널리티: 6, 차수: 6
- 차수(Degree) : 속성(애트리뷰트)의 수 - 차애
- 카디널리티(Cardinality) : 튜플의 수 - 카튜
180. 데이터베이스 성능에 많은 영향을 주는 DBMS의 구성 요소로 테이블과 클러스터에 연관되어 독립적인 저장 공간을 보유하며, 데이터베이스에 저장된 자료를 더욱 빠르게 조회하기 위하여 사용되는 것은?
① 인덱스(Index)
② 트랜잭션(Transaction)
③ 역정규화(Denormalization)
④ 트리거(Trigger)
181. 데이터베이스 설계 단계 중 저장 레코드 양식 설계, 레코드 집중의 분석 및 설계, 접근 경로 설계와 관계되는 것은?
① 논리적 설계
② 요구 조건 분석
③ 개념적 설계
④ 물리적 설계
데이터베이스 설계
개념적 모델링 정보 모델링, 개념화 독립적인 개념 모델링, 트랜잭션 모델링 (ER 다이어그램) 논리적 모델링 데이터 모델링 논리 스키마 설계, 트랜잭션 인터페이스 설계, 스키마의 평가 및 정제 물리적 모델링 데이터 구조화 목포 DBMS에 맞는 물리적 구조의 데이터 변환 (저장 레코드, 접근 경로 설계)
182. 시스템 카탈로그에 대한 설명으로 틀린 것은?
① 시스템 카탈로그의 갱신은 무결성 유지를 위하여 SQL을 이용하여 사용자가 직접 갱신하여야 한다.
② 데이터베이스에 포함되는 데이터 객체에 대한 정의나 명세에 대한 정보를 유지 관리한다.
③ DBMS가 스스로 생성하고 유지하는 데이터베이스 내의 특별한 테이블의 집합체이다.
④ 카탈로그에 저장된 정보를 메타 데이터라고도 한다.
183. 다음과 같은 트랜잭션의 특성은?
시스템이 가지고 있는 고정요소는 트랜잭션 수행 전과 트랜잭션 수행 완료 후의 상태가 같아야 한다.
① 원자성(atomicity)
② 일관성(consistency)
③ 격리성(isolation)
④ 영속성(durability)
184. 뷰(VIEW)에 대한 설명으로 옳지 않은 것은?
① DBA는 보안 측면에서 뷰를 활용할 수 있다.
② 뷰 위에 또 다른 뷰를 정의할 수 있다.
③ 뷰에 대한 삽입, 갱신, 삭제 연산 시 제약사항이 따르지 않는다.
④ 독립적인 인덱스를 가질 수 없다.
뷰(View)특징
- 뷰의 생성 시 CREATE 문, 검색 시 SELECT 문을 사용한다.
- 뷰의 정의 변경시 ALTER문을 사용할 수 없고 DROP 문을 이용한다.
- 뷰를 이용한 또 다른 뷰의 생성이 가능하다.
185. 아래의 SQL문을 실행한 결과는?
SELECT 이름
FROM R1
WHERE 학번 IN
(SELECT 학번
FROM R2
WHERE 과목번호 = ‘C100’)


186. 조건을 만족하는 릴레이션의 수평적 부분집합으로 구성하며, 연산자의 기호는 그리스 문자 시그마(σ)를 사용하는 관계대수 연산은?
① Select
② Project
③ Join
④ Division
순수관계 연산자의 종류
- select (σ) : 튜플 집합을 검색한다.
- project (π) : 속성 집합을 검색한다.
- join (⋈) : 두 릴레이션의 공통 속성을 연결한다.
- division (÷) : 두 릴레이션에서 특정 속성을 제외한 속성만 검색한다.
187. 관계 데이터 모델에서 릴레이션(relation)에 관한 설명으로 옳은 것은?
① 릴레이션의 각 행을 스키마(schema)라 하며, 예로 도서 릴레이션을 구성하는 스키마에는 도서번호, 도서명, 저자, 가격 등이 있다.
② 릴레이션과 각 열을 튜플(tuple)이라 하며, 하나의 튜플을 각 속성에서 정의된 값을 이용하여 구성된다.
③ 도메인(domain)은 하나의 속성이 가질 수 있는 같은 타입의 모든 값의 집합으로 각 속성의 도메인은 원자값을 갖는다.
④ 속성(attribute)은 한 개의 릴레이션의 논리적인 구조를 정의한 것으로 릴레이션의 이름과 릴레이션에 포함된 속성들의 집합을 의미한다.
188. 다음에서 설명하는 스키마(Schema)는?
데이터베이스 전체를 정의한 것으로 데이터개체, 관계, 제약조건, 접근권한, 무결성 규칙 등을 명세한 것
① 개념 스키마
② 내부 스키마
③ 외부 스키마
④ 내용 스키마
스키마 3계층
외부 스키마(External Schema) - 사용자나 응용 프로그래머가 접근할 수 있는 정의 기술을 의미한다. 개념 스키마(Conceptual Schema) - 범기관적 입장에서 데이터베이스를 정의한 것이다.
- 개체 간의 관계와 제약조건을 나타내고, 데이터베이스 접근 권한, 보안 및 무결성 규칙 명세가 있다.내부 스키마(Internal Schema) - 데이터의 실제 저장 방법 기술을 의미한다.
189. 3NF에서 BCNF가 되기 위한 조건은?
① 이행적 함수 종속 제거
② 부분적 함수 종속 제거
③ 다치 종속 제거
④ 결정자이면서 후보 키가 아닌 것 제거
190. 다음 정의에서 말하는 기본 정규형은?
어떤 릴레이션 R에 속한 모든 도메인이 원자값(Atomic Value)만으로 되어 있다.
① 제1정규형(1NF)
② 제2정규형(2NF)
③ 제3정규형(3NF)
④ 보이스/코드 정규형(BCNF)
제1정규형(1NF)
- 어떤 릴레이션에 속한 모든 도메인이 원자값(Atomic Value)만으로 되어 있는 릴레이션이다.
- 하나의 속성만 있어야 하고 반복되는 속성은 별도 테이 블로 분리한다.
191. 「회원」 테이블 생성 후 「주소」 필드(컬럼)가 누락되어 이를 추가하려고 한다. 이에 적합한 SQL명령어는?
① DELETE
② RESTORE
③ ALTER
④ ACCESS
192. SQL에서 스키마(schema), 도메인(domain), 테이블(table), 뷰(view), 인덱스(index)를 정의하거나 변경 또는 삭제할 때 사용하는 언어는?
① DML(Data Manipulation Language)
② DDL(Data Definition Language)
③ DCL(Data Control Language)
④ IDL(Interactive Data Language)
- DDL의 종류 : CREATE, DROP, ALTER (크드알)
- DML의 종류 : SELECT, INSERT, DELETE, UPDATE (셀인딜업)
- DCL 의 종류 : GRANT, REVOKE, COMMIT, ROLLBACK
193. 릴레이션 R1에 속한 애트리뷰트의 조합인 외래키를 변경하려면 이를 참조하고 있는 릴레이션 R2의 기본키도 변경해야 하는데 이를 무엇이라 하는가?
① 정보 무결성
② 고유 무결성
③ 널 제약성
④ 참조 무결성
194. E-R 다이어그램의 표기법으로 옳지 않는 것은?
① 개체타입 - 사각형
② 속성 - 타원
③ 관계집합 - 삼각형
④ 개체타입과 속성을 연결 - 선
E-R 다이어그램
개체(Entity) - 사각형
속성(Attribute) - 타원
관계(Relationship) - 마름모
개체타입과 속성 연결 - 선
195. 결과 값이 아래와 같을 때 SQL 질의로 옳은 것은?

① SELECT * FROM 공급자 WHERE 공급자명 LIKE '%신%';
② SELECT * FROM 공급자 WHERE 공급자명 LIKE '대%';
③ SELECT * FROM 공급자 WHERE 공급자명 LIKE '%사';
④ SELECT * FROM 공급자 WHERE 공급자명 IS NOT NULL;
196. 학생 테이블을 생성한 후, 성별 필드가 누락되어 이를 추가하려고 한다. 이에 적합한 SQL 명령어는?
① INSERT
② ALTER
③ DROP
④ MODIFY
197. 다음 SQL문에서 빈칸에 들어갈 내용으로 옳은 것은?
UPDATE 회원 ( ) 전화번호=‘010-14’
WHERE 회원번호 = ‘N4’;
① FROM
② SET
③ INTO
④ TO
198. 릴레이션에 있는 모든 튜플에 대해 유일성은 만족시키지만 최소성은 만족시키지 못하는 키는?
① 후보키
② 기본키
③ 슈퍼키
④ 외래키
199. DBA가 사용자 PARK에게 테이블 [STUDENT]의 데이터를 갱신할 수 있는 시스템 권한을 부여하고자 하는 SQL문을 작성하고자 한다. 다음에 주어진 SQL문의 빈칸을 알맞게 채운 것은?
SQL>GRANT ㉠ ㉡
STUDENT TO PARK;
① ㉠ INSERT, ㉡ INTO
② ㉠ ALTER, ㉡ TO
③ ㉠ UPDATE, ㉡ ON
④ ㉠ REPLACE, ㉡ IN
200. 데이터 모델에 표시해야 할 요소로 거리가 먼 것은?
① 논리적 데이터 구조
② 출력 구조
③ 연산
④ 제약조건
201. 릴레이션 R의 모든 결정자(determinant)가 후보키이면 그 릴레이션 R은 어떤 정규형에 속하는가?
① 제 1 정규형
② 제 2 정규형
③ 보이스/코드 정규형
④ 제 4 정규형
정규화 과정
1NF 도메인이 원자값 2NF 부분적 함수 종속 제거 3NF 이행적 함수 종속 제거 BCNF 결정자 이면서 후보키가 아닌 함수 종속 제거 4NF 다치 종속 제거 5NF 조인 종속성 제거
202. 다음 관계형 데이터 모델에 대한 설명으로 옳은 것은?

① relation 3개, attribute 3개, tuple 5개
② relation 3개, attribute 5개, tuple 3개
③ relation 1개, attribute 5개, tuple 3개
④ relation 1개, attribute 3개, tuple 5개
203. Commit과 Rollback 명령어에 의해 보장 받는 트랜잭션의 특성은?
① 병행성
② 보안성
③ 원자성
④ 로그
릴레이션의 특징
- 튜플의 유일성:모든 튜플은 서로 다른 값을 갖는다.
- 튜플의 무순서성:하나의 릴레이션에서 튜플의 순서는 없다.
- 속성의 원자성:속성값은 원자값을 갖는다.
- 속성의 무순서성:각 속성은 릴레이션 내에서 유일한 이름을 가지며, 속성의 순서는 큰 의미가 없다.
204. 관계 데이터베이스인 테이블 R1에 대한 아래 SQL 문의 실행결과로 옳은 것은?


205. DCL(Data Control Language) 명령어가 아닌 것은?
① COMMIT
② ROLLBACK
③ GRANT
④ SELECT
- DDL의 종류 : CREATE, DROP, ALTER (크드알)
- DML의 종류 : SELECT, INSERT, DELETE, UPDATE (셀인딜업)
- DCL 의 종류 : GRANT, REVOKE, COMMIT, ROLLBACK
206. 병행제어 기법 중 로킹에 대한 설명으로 옳지 않은 것은?
① 로킹의 대상이 되는 객체 크기를 로킹 단위라고 한다.
② 데이터베이스, 파일, 레코드 등은 로킹 단위가 될 수 있다.
③ 로킹의 단위가 작아지면 로킹 오버헤드가 증가한다.
④ 로킹의 단위가 커지면 데이터베이스 공유도가 증가한다.
로킹 단위가 커지면 한 번의 잠금으로 더 많은 데이터가 잠기게 되어 다른 트랜잭션이 접근할 수 있는 데이터의 양이 줄어든다.
207. 관계데이터 모델의 무결성 제약 중 기본키 값의 속성 값이 널(null)값이 아닌 원자 값을 갖는 성질은?
① 개체 무결성
② 참조 무결성
③ 도메인 무결성
④ 튜플의 유일성
208. 뷰(View)의 장점이 아닌 것은?
① 뷰 자체로 인덱스를 가짐
② 데이터 보안 용이
③ 논리적 독립성 제공
④ 사용자 데이터 관리 용이
209. 정규화의 목적으로 옳지 않은 것은?
① 어떠한 릴레이션이라도 데이터베이스 내에서 표현 가능하게 만든다.
② 데이터 삽입시 릴레이션을 재구성할 필요성을 줄인다.
③ 중복을 배제하여 삽입, 삭제, 갱신 이상의 발생을 야기한다.
④ 효과적인 검색 알고리즘을 생성할 수 있다.
210. 다음에 해당하는 함수종속의 추론규칙은?
X→Y이고 Y→Z이면 X→Z이다.
① 분해 규칙
② 이행 규칙
③ 반사 규칙
④ 결합 규칙
이행 함수적 종속
- A → B이고 B → C 일 때 A → C 인 관계
211. 다음 R과 S 두 릴레이션에 대한 Division 연산의 수행 결과는?


Division
- Division에서 나누어지는 릴레이션은 나누는 릴레이션(학과 릴레이션)의 모든 속성을 전부 포함하고 있다.
212. DML(Data Manipulation Language) 명령어가 아닌 것은?
① INSERT
② UPDATE
③ ALTER
④ DELETE
- DDL의 종류 : CREATE, DROP, ALTER (크드알)
- DML의 종류 : SELECT, INSERT, DELETE, UPDATE (셀인딜업)
- DCL 의 종류 : GRANT, REVOKE, COMMIT, ROLLBACK
213. 다음과 같이 위쪽 릴레이션을 아래쪽 릴레이션으로 정규화를 하였을 때 어떤 정규화 작업을 한 것인가?

① 제1정규형
② 제2정규형
③ 제3정규형
④ 제4정규형
1정규형
- 어떤 릴레이션에 속한 모든 도메인이 원자값(Atomic value)만으로 되어 있는 릴레이션이다.
- 하나의 속성만 있어야 하고 반복되는 속성은 별도 테이 블로 분리한다.
214. 관계대수의 순수관계 연산자가 아닌 것은?
① Select
② Cartesian Product
③ Division
④ Project
순수관계 연산자의 종류
- select (σ) : 튜플 집합을 검색한다.
- project (π) : 속성 집합을 검색한다.
- join (⋈) : 두 릴레이션의 공통 속성을 연결한다.
- division (÷) : 두 릴레이션에서 특정 속성을 제외한 속성만 검색한다.
215. SQL의 분류 중 DDL에 해당하지 않는 것은?
① UPDATE
② ALTER
③ DROP
④ CREATE
- DDL의 종류 : CREATE, DROP, ALTER (크드알)
- DML의 종류 : SELECT, INSERT, DELETE, UPDATE (셀인딜업)
- DCL 의 종류 : GRANT, REVOKE, COMMIT, ROLLBACK
216. STUDENT 테이블에 독일어과 학생 50명, 중국어과 학생 30명, 영어영문학과 학생 50명의 정보가 저장되어 있을 때, 다음 두 SQL문의 실행 결과 튜플 수는? (단, DEPT 컬럼은 학과명)
ⓐ SELECT DEPT FROM STUDENT;
ⓑ SELECT DISTINCT DEPT FROM STUDENT;
① ⓐ 3, ⓑ 3
② ⓐ 50, ⓑ 3
③ ⓐ 130, ⓑ 3
④ ⓐ 130, ⓑ 130
217. 정규화 과정 중 1NF에서 2NF가 되기 위한 조건은?
① 1NF를 만족하고 모든 도메인이 원자값이어야 한다.
② 1NF를 만족하고 키가 아닌 모든 애트리뷰트들이 기본 키에 이행적으로 함수 종속되지 않아야 한다.
③ 1NF를 만족하고 다치 종속이 제거되어야 한다.
④ 1NF를 만족하고 키가 아닌 모든 속성이 기본키에 대하여 완전 함수적 종속 관계를 만족해야 한다.
1NF -> 2NF
기본 키의 일부분에만 종속되는 부분 함수 종속을 제거하는 것이다.
218. 데이터 무결성 제약조건 중 “개체 무결성 제약”조건에 대한 설명으로 맞는 것은?
① 릴레이션 내의 튜플들이 각 속성의 도메인에 지정된 값만을 가져야 한다.
② 기본키에 속해 있는 애트리뷰트는 널값이나 중복값을 가질 수 없다.
③ 릴레이션은 참조할 수 없는 외래키 값을 가질 수 없다.
④ 외래키 값은 참조 릴레이션의 기본키 값과 동일해야 한다.
219. 이행적 함수 종속 관계를 의미하는 것은?
① A→B이고 B→C일 때, A→C를 만족하는 관계
② A→B이고 B→C일 때, C→A를 만족하는 관계
③ A→B이고 B→C일 때, B→A를 만족하는 관계
④ A→B이고 B→C일 때, C→B를 만족하는 관계
220. DML에 해당하는 SQL 명령으로만 나열된 것은?
① DELETE, UPDATE, CREATE, ALTER
② INSERT, DELETE, UPDATE, DROP
③ SELECT, INSERT, DELETE, UPDATE
④ SELECT, INSERT, DELETE, ALTER
- DDL의 종류 : CREATE, DROP, ALTER (크드알)
- DML의 종류 : SELECT, INSERT, DELETE, UPDATE (셀인딜업)
- DCL 의 종류 : GRANT, REVOKE, COMMIT, ROLLBACK
221. 데이터베이스의 논리적 설계(logical design) 단계에서 수행하는 작업이 아닌 것은?
① 레코드 집중의 분석 및 설계
② 논리적 데이터베이스 구조로 매핑(mapping)
③ 트랜잭션 인터페이스 설계
④ 스키마의 평가 및 정제
논리적 설계 - 목표 DBMS에 종속적인 논리적 스키마 작성
- 논리적 데이터 모델로 변환
- 트랜잭션 인터페이스 설계
- 스키마의 평가 및 정제물리적 설계 - 목표 DBMS에 종속적인 물리적 구조 설계
- 저장 레코드 양식 설계 및 레코드 집중의 분석/설계
- 파일 조직 방법과 저장 방법 그리고 파일 접근 방법 등을 선정
- 응답시간 효율화를 위한 접근 경로 설계
- 트랜잭션 세부설계
222. E-R 모델의 표현 방법으로 옳지 않은 것은?
① 개체타입 : 사각형
② 관계타입 : 마름모
③ 속성 : 오각형
④ 연결 : 선
223. 병행제어의 로킹(Locking) 단위에 대한 설명으로 옳지 않은 것은?
① 데이터베이스, 파일, 레코드 등은 로킹 단위가 될 수 있다.
② 로킹 단위가 작아지면 로킹 오버헤드가 감소한다.
③ 로킹 단위가 작아지면 데이터베이스 공유도가 증가한다.
④ 한꺼번에 로킹 할 수 있는 객체의 크기를 로킹 단위라고 한다.
로킹 단위가 작아지면 시스템이 관리해야 할 잠금의 수가 증가하므로,
잠금을 설정하고 해제하며 충돌을 확인하는 데 드는 오버헤드(Overhead)는 오히려 증가
224. 뷰(view)에 대한 설명으로 옳지 않은 것은?
① 뷰는 CREATE 문을 사용하여 정의한다.
② 뷰는 데이터의 논리적 독립성을 제공한다.
③ 뷰를 제거할 때에는 DROP 문을 사용한다.
④ 뷰는 저장장치 내에 물리적으로 존재한다.
뷰는 물리적으로 존재하지 않는 가상화된 테이블이다.
225. 하나의 애트리뷰트가 가질 수 있는 원자값들의 집합을 의미하는 것은?
① 도메인
② 튜플
③ 엔티티
④ 다형성
도메인(Domain)
- 하나의 애트리뷰트가 가질 수 있는 원자값들의 집합
226. 관계대수 연산에서 두 릴레이션이 공통으로 가지고 있는 속성을 이용하여 두 개의 릴레이션을 하나로 합쳐서 새로운 릴레이션을 만드는 연산은?
① ⋈
② ⊃
③ π
④ σ
순수관계연산의 종류
- selection (σ) : 튜플 집합 검색
- projection (π) : 속성 집합 검색
- join (⋈) : 두 릴레이션의 공통 속성은 연결
- division (÷) : 두 릴레이션에서 특정 속성을 제외한 속성만 검색
227. 분산 데이터베이스 목표 중 “데이터베이스의 분산된 물리적 환경에서 특정 지역의 컴퓨터 시스템이나 네트워크에 장애가 발생해도 데이터 무결성이 보장된다”는 것과 관계있는 것은?
① 장애 투명성
② 병행 투명성
③ 위치 투명성
④ 중복 투명성
분산데이터베이스의 목표 : 위중병장
위치 투명성 (Location Transparency) 하드웨어와 소프트웨어의 물리적 위치를 사용자가 알 필요가 없다. 중복 투명성 (Replication Transparency) 시스템 안에 파일들과 자원들의 부가적인 복사를 자유롭게할수 있다. 병행 투명성 (Concurrency Transparency) 다중 사용자들이 자원들을 자동으로 공유할 수 있다. 장애 투명성 (Failure Transparency) 사용자들은 어느 위치의 시스템에 장애가 발생했는지 알 필요가 없다.
228. 다음 SQL문의 실행 결과는?

SELECT 가격 FROM 도서가격
WHERE 책번호 = (SELECT 책번호 FROM 도서 WHERE 책명=‘자료구조’);
① 10,000
② 15,000
③ 20,000
④ 25,000
229. 데이터 제어언어(DCL)의 기능으로 옳지 않은 것은?
① 데이터 보안
② 논리적, 물리적 데이터 구조 정의
③ 무결성 유지
④ 병행수행 제어
230. 트랜잭션의 특성 중 다음 설명에 해당하는 것은?
“트랜잭션의 연산은 데이터베이스에 모두 반영되든지 아니면 전혀 반영되지 않아야 한다.”
① Durability
② Share
③ Consistency
④ Atomicity