솜이의 데브로그

8장 ) 테이블 설계(1) 본문

CS/Database

8장 ) 테이블 설계(1)

somsoming 2021. 11. 28. 14:38

Reference : 데이터베이스 첫걸음

 

8장 ) 테이블 설계의 기초

 

테이블은 '공통적인 요소의 집합'이다.

  1. 집합 찾기
  2. 할당된 기본키 찾기
  3. 함수 찾기

 

테이블 설계의 기초

  • 테이블 설계를 '논리 설계'라고도 한다.
  • 테이블은 공통 속성을 가진 것의 집합. 각각의 행이 공통적인 특징을 가진 집합
  • 테이블 설계의 제 1 규칙 : 테이블명은 반드시 복수형이나 집합명사로 표현해야함.
  • 테이블은 현실 세계를 반영한다.

 

 

테이블 설계 규칙

  • 사물과 사물의 집합은 계층이 다르다.
  • 가장 상위의 개념 집합으로 정리한다.
    • DBMS와 프로그래밍 언어의 기능에 따라서 WHERE 절에 조건으로 입력하는 값을 변경하는 기능을 포함.
  • 열이란 개체의 속성이다.
    • 테이블은 클래스에 해당하고, 각 행은 거기서 실체화된 인스턴스에 해당한다.
    • 하지만 테이블은 단지 조작을 받는 수동적인 존재.
    • PostgreSQL에서는 테이블에 대해 클래스와 같은 '상속'을 정의할 수 있다.
  • 반드시 기본키를 설정한다.
    • 한 개 테이블의 내용에는 중복 행을 허용하지 않는다.
    • 기본키는 한 개의 테이블에 반드시 한 개만 존재해야한다.
  • 기본키 할당은 관리의 기본
  • 기본키는 중복되면 안 된다.
  • 기본키 열로 NULL은 불가하다.
    • 관계형 데이터베이스에서는 기본키 열에 null 사용이 금지되어 있어 거의 모든 DBMS에서 기본키로 NULL을 설정하려해도 오류가 발생한다.

 

데이터 관리는 등록한 그 시점에만 정합성이 있어야 하는 것이 아닌 장기적으로 정합성을 얻는 노력을 해야하는 것이다.

즉, 테이블 설계는 데이터가 정적이지 않고 동적임을 전제로 생각해야한다.