3과목 데이터베이스 구축 정보처리기사 필기 핵심 요약입니다. 기출문제는 이런식으로 문제가 나온다는 것을 보여드리기 위한것으로 충분히 답 추측이 가능하게 하여 별도 답을 기재하지는 않았습니다.
정보처리기사 필기 요약 글 모음
1과목 - 소프트웨어 설계 요약
2과목 - 소프트웨어 개발 요약
3과목 - 데이터베이스 구축 요약(현재글)
4과목 - 프로그래밍 언어 활용 요약
5과목 - 정보시스템 구축관리 요약
총 정리 및 합격 후기
1. 데이터베이스 기초 개념 ★★
릴레이션(=테이블) : 데이터를 표 형태로 표현한 것
속성 : 릴레이션의 열
차수 : 속성의 수
튜플 : 릴레이션의 행
카디널리티 : 튜플의 수
도메인 : 속성에 들어가는 원자값 집합
아래와 같은 릴레이션이 있다면
릴레이션은 테이블 그 자체이기에 1개
차수는 3(학번, 이름, 전공)
카디널리티는 2이다(값이 들어가는 실질적인 행 수)
학번 | 이름 | 전공 |
20230701 | 홍길동 | 컴퓨터공학 |
20230702 | 김철수 | 경영 |
1-1 계산공식
위처럼 카디널리티2, 차수3인 릴레이션에
카디널리티 4, 차수 3인 릴레이션을 단순히 이어붙이면
카디널리티는 곱연산으로 2*4 = 8
차수는 합연산으로 3+3 = 6 이 된다.
속성이 4개, 튜플이 7개라는 점에서 차수 예측이 가능합니다. 답 3번(해당 문제만 답을 추가했습니다)
1-2 튜플
튜플 사이에는 순서가 없다.
2. DDL, DML, DCL ★★
DDL(Data Definition Language) 데이터 정의어 : 데이터 구조를 정의하는 명령어
- CREATE : 테이블 생성
- ALTER : 테이블 속성 변경(위 제시된 릴레이션에서 나이 속성을 추가하고 싶을 때 등등)
- DROP : 테이블 드랍
DML(Data Manipulation Language) 데이터 조작어 : 데이터에 변형을 가하는 명령어
- SELECT : 조회
- INSERT : 삽입
- UPDATE : 수정
- DELETE : 삭제
DCL(Data Control Language) 데이터 제어어 : 데이터베이스에 접근하고 객체들을 사용할 수 있게 권한을 주거나 회수하는 명령어
- GRANT : 권한 부여
- REVOKE : 권한 회수
- COMMIT : 결과 반영
- ROLLBACK : 결과 되돌리기
3. SQL 명령어 중 기출 출제 ★
DISDINCT - 중복제거(SELECT 절에 쓴다)
CASCADE - 부모 항목 값 삭제 시 자식들도 같이 삭제
ALTER - 속성 추가, 삭제 등 릴레이션 자체에 대한 수정
BETWEEN AND - 서로 짝(함께 붙어다닌다)
UPDATE SET - 서로 짝(함께 붙어다닌다)
4. 후보키 vs 슈퍼키 ★★★
후보키 : 유일성과 최소성 모두 만족하는 키
슈퍼키 : 유일성은 만족하지만 최소성은 만족하지 못하는 키
기본키 : null값이나 중복값을 못가지는 키
외래키 : 기본키를 참조하는 키
대체키 : 기본키가 없을 때 그 자리를 대신해줄 수 있는 키
5. 로킹 ★★★
로킹(Locking) : 트랜잭션이 접근하는 동안 데이터를 잠궈 다른 트랜잭션이 접근하지 못하도록 보호
로킹 단위가 커지면 그 외 모든게 작아지고(로크 수, 병행성, 오버헤드, 공유도 등 작아짐) 관리가 수월해진다.
반대로, 로킹 단위가 작아지면 모든게 커지고 관리가 복잡해진다
※ 로킹 문제가 나오면 단위가 커지는데 다른게 똑같이 커진다거나 하는게 없는지부터 보자
6. 정규화 ★★★
비정규 릴레이션 -> 제1정규형 -> 제2정규형 -> 제3정규형 -> BCNF(보이스/코드 정규형) -> 제4정규형 -> 제5정규형
각 화살표에 해당하는 부분에서 아래 과정을 해야한다.
비정규 -> 제1정규 : 비정규 릴레이션이 제1정규형이 되기위해 도메인이 원자값 되어야 한다.
제1정규 -> 제2정규 : 부분적 함수 종속 제거가 필요
제2정규 -> 제3정규 : 이행적 함수 종속 제거가 필요
제3정규 -> BCNF : 결정자이면서 후보키가 아닌 것 제거 필요
BCNF -> 제4정규 : 다치 종속 제거 필요
제4정규 -> 제5정규 : 조인 종속성 이용
"도부이 결다조" 키워드를 꼭 외워야 한다.
6-1 이행적 함수 종속 관계
삼단논법이랑 비슷한데
A->B이고 B->C일 때, A->C를 만족하는 관계를 이행적 함수 종속 관계라고 하며
이러한 관계를 지우는게 제2정규형에서 제3정규형이 되기위한 조건이기도 하다.
7. 트랜잭션 특징 ★★★
영어만으로도 출제되기 때문에 영어도 기억해야 한다.
원자성(Automicity) : 트랜잭션 연산은 데이터베이스에 모두 반영되거나, 전혀 반영되지 않아야 한다.
일관성(Consistency) : 트랜잭션이 그 시행을 성공적으로 완료하면 언제나 일관성 있는 데이터베이스 상태로 변환한다.
영속성(Durability) : 성공적으로 완료된 트랜잭션 결과는 시스템이 고장나더라도 영구적으로 반영되어야 한다.
격리성(Isolation) : 트랜잭션 실행 중 다른 트랜잭션의 접근이 불가해야 한다.
※ '모두 반영' 이라는 키워드가 나오면 일단 Automicity(원자성)를 떠올리자
8. 무결성 ★★
개체 무결성 : 테이블의 기본키를 구성하는 어떤 속성도 null 값이나 중복값을 가질 수 없다.
참조 무결성 : 외래키 값은 null이거나 참조 릴레이션이 기본키 값과 동일해야 한다.
도메인 무결성 : 주어진 속성 값이 정의된 도메인에 속한 값이어야 한다.
9. 관계 대수 연산 ★★
관계대수 : 관계형 데이터베이스에서 원하는 정보와 그 정보를 검색하기 위해 어떻게 유도하는가를 기술하는 절차적 언어
순수관계 연산자
select - 기호(σ) - 조건에 맞는 튜플 검색
project - 기호(𝝅) - 특정 속성만 보여주기
join - 기호(▷◁) - 합치기
division - 기호(÷) - 해당 튜플의 검색 대상 속성은 제거하고 보여주기
※ 관계대수 설명이 나올 때 비절차적 언어라 하면 무조건 틀린 지문이다.
10. 뷰 ★★
뷰(View) : 테이블을 기반으로 만들어진 가상의 테이블
- 논리적으로만 존재
- 기본 테이블 삭제 시 뷰도 같이 삭제
- 뷰위에 또 다른 뷰 정의 가능
- 삽입, 갱신, 삭제에 제약 존재
- CREATE, DROP은 가능하지만 ALTER는 안됨
11. 데이터베이스 목표 ★★
위치투명성(Location Trasparency) : 데이터베이스의 실제 위치를 알 필요없이 논리적 명칭만으로 액세스 가능
중복투명성(Replication Trasparency) : 데이터가 여러 곳에 있더라도 마치 하나인 것처럼 사용 가능
병행투명성(Concurrency Trasparency) : 다수 트랜잭션이 동시 실행되더라도 결과는 영향x
장애투명성(Failure Trasparency) : 장애에도 트랜잭션을 정확히 수행
분할투명성(Division Trasparency) : 각 단편의 사본이 여러 시스템에 저장되어 있음을 인식할 필요가 없음
12. 물리적 설계, 논리적 설계 ★★
물리적 설계
- 레코드 집중 분석 및 설계
- 저장 레코드 양식 설계
- 저장 경로 지정
- 접근 경로 설계
논리적 설계
- 논리적 구조 매핑
- 트랜잭션 인터페이스 설계
- 스키마 평가 및 정제
※ 저장경로, 레코드 등 키워드가 들어가면 물리적 설계
'정보처리기사 > 내용' 카테고리의 다른 글
정보처리기사 응시자격 서류 제출 하는 법&제출 기간&비용(대학, 학은제) (0) | 2023.07.19 |
---|---|
2024 정보처리기사 필기 요약 2과목 - 소프트웨어 개발 (4) | 2023.07.16 |
2024 정보처리기사 필기 요약 4과목 - 프로그래밍 언어 활용 (0) | 2023.07.15 |
2024 정보처리기사 필기 요약 5과목 - 정보시스템 구축관리 (4) | 2023.07.15 |
2024 정보처리기사 필기 핵심 요약 1과목 - 소프트웨어 설계 (3) | 2023.07.14 |