데베구_0526

allzeroyou·2022년 5월 26일
0

데이터베이스

목록 보기
22/25

기말고사 0616
시험 범위는 전체

개념적인 부분을 물어볼 예정

중간고사 때 쿼리를 짰었다면 이번에는 쿼리 외에 개념적인 부분에 대한 내용이 나올 것

DB 사용에 대해 배움
이제는 이론에 대해 배울 것
정형화된 포맷으로 테이블을 만들어라! 라는 규칙

도서, 주문 등 구분된 테이블을 다룸

테이블을 만들어야 할 때 독립적으로 다뤄야 하는 것을 테이블로 만든 후 FK, PK 설정

설계 과정에서 발생할 수 있는 이상현상의 종류와 원인

1. 이상현상의 개념

데이터 신뢰성 하락 방지

학생 정보와 수강에 관한 정보가 한 테이블에 존재함

  • 삭제 이상
    투플 삭제 시 같이 저장된 다른 정보까지 연쇄적으로 삭제되는 현상(triggered deletion) 문제 발생
  • 삽입 이상
    투플 삽입 시 특정 속성에 해당하는 값이 없어 NULL 값을 입력해야 하는 현상 => NULL 값 문제 발생
  • 수정 이상
    투플 수정 시 중복된 데이터의 일부만 수정되어 데이터의 불일치 문제가 일어나는 현상 => 불일치 문제 발생

Summer 테이블을 생성하고 데이터를 삽입하는 SQL 문
계절학기 수강은 1인당 1과목만 수강 가능

이상 현상이 발생하지 않도록 하려면 테이블을 나눠야 !

함수 종속성

함수 종속성(Functional Dependency)은 어떤 테이블의 속성 A와 B에 대하여, A값에 의해 B값이 유일하게 정해지는 관계를 말하며, "B는 A에 함수 종속이다"라고 한다. A→B의 기호로 나타낸다. 
이때, A를 결정자(Determinant)라고 하고, B를 종속자(Dependant)라고 한다.

시험문제로 내기 괜찮다는 교수님 말씀..ㅎㅎ

정규화는 3단계 정도까지 배울 것

정규화

제 1 정규형

릴레이션 R의 모든 속성 값이 원자값을 가지면 제 1정규형이라고 함

제 2 정규형

릴레이션 R이

  • 제 1 정규형이고
  • 기본키가 아닌 속성이 기본키에 완전 함수 종속일 때 제 2정규형이라고 함

(=기본키에 완전 함수 종속이 아닐때)아닌 걸 찾아야 제 2 정규형이 됨

성적은 학생번호, 강좌이름이 합쳐져야함. 종속적이다
강의실은 강좌이름만 있음 됨(학생번호 x) => 테이블에 문제가 있을 때 테이블을 나누자!

제 3 정규형

릴레이션 R이 제 2 정규형이고 기본키가 아닌 속성이 기본키에 비 이행적(non-transitive)으로 종속할 때(직접 종속) 제 3 정규형이락 ㅗ함
이행적 종속이란 A => B, B => C가 성립할 때 A => C가 성립되는 함수 종속성

학생번호 => 강좌이름 => 수강료
학생번호가 수강료를 알 수 있으니까 강좌이름은 불필요해진 정보가 된다.

계절학기 릴레이션에서 이상현상을 일으키는(강좌이름, 수강료)를 분해함

4, 5차 정규형은 논문에서 주로 사용

다음 시간에 무손실분해 예시 다룰 예정임.

출처: https://rebro.kr/159 [Rebro의 코딩 일기장:티스토리]

profile
모든 건 zero 부터, 차근차근 헛둘헛둘

0개의 댓글