본문 바로가기
Certificate/정보처리기사

[정보처리기사] 2022년 2회차 (3)데이터베이스 설계

by HJ0216 2023. 7. 6.

정보처리기사

정규형

  • 데이터베이스 내의 데이터들이 불필요하게 중복돼 릴레이션 조작 시 예상치 못한 문제가 발생하는 이상 현상 제거
    • 삽입 이상: 릴레이션(테이블)에 데이터를 삽입할 때 의도와는 상관없는 값들도 함께 삽입되는 현상
    • 삭제 이상: 릴레이션에서 한 튜플(행)을 삭제할 때 의도와는 상관없는 값들이 삭제되는 연쇄가 일어나는 현상
    • 갱신 이상: 릴레이션에서 튜플에 있는 속성값을 갱신할 때 일부 튜플의 정보만 갱신되며 정보에 모순이 생기는 현상
  1. 제 1정규형: 도메인이 원자값
  2. 제 2정규형: 부분함수 종속성 제거
  3. 제 3정규형: 이행적 함수 종속성 제거
  4. BCNF: 결정자이면서 후보키가 아닌것 제거
  5. 제 4정규형: 다치 종속 제거
  6. 제 5정규형: 조인 종속 제거

 

데이터 베이스

설계

  1. 요구 조건 분석 : 요구 조건 명세서 작성
  2. 개념적 설계 : ERD, 트렌잭션 모델링
  3. 논리적 설계 : 정규화, 트랜잭션 인터페이스 설계
  4. 물리적 설계 : 성능 향상을 위한 작업(인덱스, 뷰, 반정규화 등)
  5. 구현 : 목표 DBMS의 DDL(데이터 정의어)로 데이터베이스 생성, 트랜잭션 작성

 

트랜젝션 성질

  1. 원자성(Atomicity): One or Nothing
  2. 일관성(Consistency)
  3. 격리성(Isolation)
  4. 영속성(Durability)

 

용어

  • 튜플(Tuple): 릴레이션을 구성하는 각각의 행을 말하며 속성의 모임, 튜플의 수를 카디널리티(Cardinality) 또는 기수
  • 속성(Attribute): 데이터베이스를 구성하는 가장 작은 논리적 단위이며 개체의 특성을 기술, 속성의 수를 디그리(Degree) 또는 차수
  • 도메인(Domain): 하나의 속성(attribute)이 취할 수 있는 같은 타입의 원자값들의 집합

 

스키마

: DB의 구조와 제약 조건에 관한 전반적이 명세(Specification)를 기술(Description) 한 메타데이터(DB에 대한 데이터)의 집합

  1. 외부 스키마
    : 사용자나 응용 프로그래머가 각 개인의 입장에서 필요로 하는 DB의 논리적 구조를 정의
  2. 개념 스키마
    : DB의 전체적인 논리적 구조, 모든 응용 프로그램이나 사용자들이 필요로 하는 데이터를 종합한 조직 전체의 DB로 하나만 존재
  3. 내부 스키마
    : 물리적인 저장장치의 입장에서 본 DB
  • 독립성
    • 논리적 독립성: 개념 스키마의 변경은 외부 스키마에 영향을 미치지 않음
    • 물리적 독립성: 내부 스키마의 변경은 개념, 외부 스키마에 영향을 미치지 않음
      (varchar2(10) ▶ varchar2(30)으로 변경한다고 해서 외부스키마와 개념스키마에 영향 X)

 

Key

key_type

  1. Super Key: 유일성-대상을 유일하게 식별할 수 있으면 충족
  2. Candidate Key: 유일성 + 최소성
    • Alternate Key: PK가 아닌 후보키
    • Primary Key: AK 중 가정 적합한 키(예: 학교에서 PK는 학번)

 

PK 무결성

  1. 개체 무결성: Not Null & Unique
  2. 참조 무결성: 외래키 값은 피참조 릴레이션의 기본키 값이거나 NULL 값임참조_무결성
  3. 도메인 무결성: 속성 (Attribute) 값은 해당 속성 (Attribute) 도메인에 속한 값들 중 하나이어야 함

참조 무결성 제약

  1. CASCADE : A개체를 변경/삭제 → A개체를 참조하고 있는 모든 개체들이 변경/삭제
  2. RESTRICT : A개체를 변경/삭제 → A개체를 참조하고 있는 개체가 존재하면 A개체에 대한 명령(변경/삭제)이 취소
  3. SET NULL : A개체를 변경/삭제 → A개체를 참조하고 있는 모든 개체들의 값은 NULL로 셋팅

 

 

 

참고 자료

 

흥달쌤

흥달쌤과 함께하는 IT 채널입니다. 정보처리기사 자격증 관련된 강의 및 실무 노하우, 프로그래밍 언어(JAVA, C언어, Python) 특강 등이 진행됩니다. 앞으로 진행 예정인 동영상은 IT 관련된 이야기

www.youtube.com

 

[SQL] 키(KEY)의 개념 / 개체무결성 / 참조무결성 / 도메인 무결성

키 (Key) 키 (Key) 의 개념 하나의 테이블 내에서 각 튜플의 유일하게 식별할 수 있는 속성 (Attribute) 들의 집합 실생활의 키 하나의 자물쇠를 열수 있는 열쇠 ( 키 ) 는 오직 하나임 생활의 편리성을

reeme.tistory.com

 

'2021 정보처리기사/3과목: 데이터베이스 구축' 카테고리의 글 목록

IT 공부 기록

y-oni.tistory.com