2025-08-15 22:11

Tags: SQL

테이블

  • 엑셀 시트처럼 행(Row)열(Column) 로 구성된 2차원 표.
  • 하나의 테이블에는 특정 주제에 관한 데이터들이 모여 있음.
  • 예를 들어 ‘학생’ 테이블, ‘과목’ 테이블.
  • 릴레이션( 도메인(Domain) 의 데카르트 곱(Cartesian Product)에서 파생된  튜플(Tuple)들의 집합 )이 곧 테이블이다.

행 (Row, 튜플, 레코드)

  • 테이블의 가로줄
  • 표현하는 엔터티 의 개별 인스턴스
  • 학생 테이블의 각 행 ‘홍길동’, ‘이순신’은 완전한 정보 단위이자 유일함
  • 모든 행은 유일해야 하며, 유일성은 기본 키에 의해 보장

열(Column, 속성, 필드)

  • 테이블의 세로줄
  • 주제가 가질 수 있는 구체적인 속성
  • 학생 테이블의 ‘학번’ ‘이름’ ‘학과’ 이 각각의 열
  • 각 열은 하나의 속성만을 나타내야함

셀(Cell)

  • 하나의 행과 하나의 열이 만나는 지점
  • 원자성 지켜야함. 오직 하나의 값만 저장

설계 원칙

  • 하나의 테이블은 하나의 주제만 다룬다.
  • 계산된 값은 저장하지 않는다. (단, 예외적으로 반정규화 가능)
  • 적절하고 일관된 이름
    • 모두가 같은 컨벤션 따라야함
    • 만약에 복수형에 대한 원칙 정해지면 s와 es 등 문법에 안맞아도 통일해야할 수 있음