릴레이션 R의 모든 결정자(determinant)가 후보키이면 그 릴레이션 R은 어떤 정규형에 속하는가?
① 제 1 정규형
② 제 2 정규형
③ 보이스/코드 정규형
④ 제 4 정규형

Commit과 Rollback 명령어에 의해 보장 받는 트랜잭션의 특성은?
① 병행성
② 보안성
③ 원자성
④ 로그





DCL(Data Control Language) 명령어가 아닌 것은?
① COMMIT
② ROLLBACK
③ GRANT
④ SELECT
병행제어 기법 중 로킹에 대한 설명으로 옳지 않은 것은?
① 로킹의 대상이 되는 객체의 크기를 로킹 단위라고 한다.
② 데이터베이스, 파일, 레코드 등은 로킹 단위가 될 수 있다.
③ 로킹의 단위가 작아지면 로킹 오버헤드가 증가한다.
④ 로킹의 단위가 커지면 데이터베이스 공유도가 증가한다.
관계 데이터모델의 무결성 제약 중 기본키 값의 속성 값이 널(Null)값이 아닌 원자 값을 갖는 성질은?
① 개체 무결성
② 참조 무결성
③ 도메인 무결성
④ 튜플의 유일성
뷰(View)의 장점이 아닌 것은?
① 뷰 자체로 인덱스를 가짐
② 데이터 보안 용이
③ 논리적 독립성 제공
④ 사용자 데이터 관리 용이
분산 데이터베이스의 투명성(Transparency)에 해당 하지 않는 것은?
① Location Transparency
② Replication Transparency
③ Failure Transparency
④ Media Access Transparency
정규화의 목적으로 옳지 않은 것은?
① 어떠한 릴레이션이라도 데이터베이스 내에서 표현 가능하게 만든다.
② 데이터 삽입시 릴레이션을 재구성할 필요성을 줄인다.
③ 중복을 배제하여 삽입, 삭제, 갱신 이상의 발생을 야기한다.
④ 효과적인 검색 알고리즘을 생성할 수 있다.







데이터베이스 로그(log)를 필요로 하는 회복 기법은?
① 즉각 갱신 기법
② 대수적 코딩 방법
③ 타임 스탬프 기법
④ 폴딩 기법
DML(Data Manipulation Language) 명령어가 아닌 것은?
① INSERT
② UPDATE
③ ALTER
④ DELETE

관계대수의 순수관계 연산자가 아닌 것은?
① Select
② Cartesian Product
③ Division
④ Project
다음 중 SQL의 집계 함수(aggregation function)가 아닌 것은?
① AVG
② COUNT
③ SUM
④ CREATE
릴레이션 조작 시 데이터들이 불필요하게 중복되어 예기치 않게 발생하는 곤란한 현상을 의미하는 것은?
① normalization
② rollback
③ cardinality
④ anomaly
릴레이션에 대한 설명으로 거리가 먼 것은?
① 튜플들의 삽입, 삭제 등의 작업으로 인해 릴레이션은 시간에 따라 변한다.
② 한 릴레이션에 포함된 튜플들은 모두 상이하다.
③ 애트리뷰트는 논리적으로 쪼갤 수 없는 원자값으로 저장한다.
④ 한 릴레이션에 포함된 튜플 사이에는 순서가 있다.
1NF : 도메인이 원자값만으로 구성된 정규형
2NF : 기본 키가 아닌 모든 속성이 기본 키에 대해 완전 함수적 종속을 만족하는 정규형
3NF : 기본 키가 아닌 모든 속성이 기본 키에 대해 이행적 종속을 만족 안하는 정규형
BCNF : 모든 결정자가 후보 키인 정규형
4NF : 다치 종속 A > B가 성립하는 경우 A에 함수적 종속 관계를 만족하는 정규형
5NF : 모든 조인 종속이 후보 키를 통해서만 성립되는 정규형
relation : 테이블의 수
attribute : 열의 수
tuple : 행의 수
원자성 : 트랜잭션 연산은 DB에 모두 반영되어 Commit(완료)되든지 아니면 반영안되어 Rollback(복구)되어야 한다.

DISTINCT : 중복 튜플 발견 시 그 중 첫번째 하나만 검색
SELECT는 DML 명령이다.
로킹의 단위가 크면 나머지가 다 작아짐
로킹이 큰 경우 : 오버헤드가 감소하고 병행성(=공유도)가 낮아진다.
개체 무결성 : 기본키로 지정되어 있는 모든 튜플의 속성은 항상 널 값을 가질 수 없다는 조건
뷰는 하나 이상의 테이블로 부터 유도되는 가상테이블이며 논리적 독립성이 제공된다.
실제 테이블 처럼 권한을 나눌 수 있다.
따라서 특정 사용자가 볼 필요가 없는 다른 열들을 배제하고 뷰를 만든 후 해당 사용자에게 뷰에 대한 권한을 할당하면 테이블 전체에 대한 권한을 부여하지 않아도 된다.
뷰는 자체적으로 인덱스를 가지지 않는다. 따라서 삽입 삭제 수정이 제한적이다.
위치 투명성, 중복 투명성, 병행 투명성, 장애 투명성
중복을 배제하여 삽입, 삭제, 갱신 이상들을 제거하기 위하여 정규화를 한다.
x > Y이고 Y > Z이면 X > Z가 성립하는 함수 종속을 이행적 함수 종속이라고 한다. 이행적 함수 종속은 정규화 2NF > 3NF 과정에서 제거된다.

R과 S 두 릴레이션에 대한 Division 연산은 릴레이션 S에 포함되는 [D2, D3]의 값이 포함되는 릴레이션 R의 [D1]을 찾아야 한다. 릴레이션 S의 [D2, D3] 값 (1, A)를 포함하는 릴레이션 R의 [D1]의 값은 a와 b이므로 이 값이 실행결과가 된다.
BETWEEN A OR B라는 문법은 없다.
즉시(즉각) 갱신 : 오류가 발생하면 우선적으로 오류를 해결하며, 데이터베이스 로그를 필요로 한다. 오류가 발생하면 즉시 처리하므로 REDO와 UNDO를 모두 이용한다.
SELECT / INSERT / DELETE / UPDATE
서울, 부산 / 워싱턴, 뉴옥을 도메인에서의 원자값으로만 구성되게 정규화 작업을 함
1NF : 도메인이 원자값만으로 구성된 정규형
SELECT, PROJECT, JOIN, DIVISION
CREATE문은 데이터 정의어에 해당된다.
anomaly(이상) : 릴레이션 조작 시 데이터들이 불필요하게 중복되어 예기치 않게 발생하는 곤란한 현상
20. ④ 한 릴레이션에 포함된 튜플 사이에는 순서가 있다.
똑같은 튜플 포함 안됨
튜플 사이 순서 없음
속성간 순서 중요 없음
속성의 명칭, 유일 구성값은 동일값 가능
속성 값은 원자값