backend
  • README
  • DOCS
    • Java Docs
    • Servlet Docs
    • JSP Docs
    • DB & SQL Docs
    • Spring Boot Docs
    • Spring Security Docs
    • AWS Docs
  • 설치하기
    • Intellij 설정
  • 자바
    • 01 Java란?
    • 02 자바 시작하기
    • 03 자료형과 연산자
    • 04 제어문
    • 05 메소드
    • 06 클래스 기초
      • Static 보충자료
      • 패키지 보충자료
    • 07 객체지향 프로그래밍
    • 08 클래스 더 알아보기
      • 열거형 ENUM 보충자료
    • 09 클래스와 자료형
      • 다형성 보충자료
      • 제네릭 보충자료
    • 10 컬렉션 프레임워크
      • 컬렉션 프레임워크 보충자료
    • 11 람다식과 함수형 프로그래밍
      • 람다식 보충자료
    • 12 오류 대비하기
      • 오류 보충자료
    • 13 멀티태스킹
      • 멀티태스킹 보충자료
    • 교재보충
      • java.lang
  • 스프링
    • 서블릿, JSP
      • 05 Servlet(서블릿)
        • 서블릿 보충자료
        • 서블릿 추가코드
        • XML, YAML, JSON
      • 06 JSP(자바 서버 페이지)
        • JSP 보충자료
      • 07 JSTL(JSP 스탠다드 태그 라이브러리)
        • JSTL 보충자료
      • 08 Cookie(쿠키), Session(세션)
      • 09 서블릿,필터,리스너
        • 서블릿,필터,리스너 보충자료
      • 11 도서관리 프로젝트 실습
    • Spring Boot
      • 01 스프링 등장 배경, 객체지향
        • 스프링 등장 배경, 객체지향 보충자료
      • 02 IOC(제어의 역전), DI(의존성 주입)
        • IOC 보충자료
        • DI 보충자료
      • 03 스프링 구조
        • 스프링 구조 보충설명
      • 04 테스트코드 실습
      • 05 스프링 빈 설정
        • 스프링 빈 설정 보충자료
      • 06 싱글톤
        • 싱글톤 보충 자료
      • 07 스프링 빈 자동설정
        • 스프링 빈 자동설정 보충자료
      • 08 빈 생명주기
        • 빈 생명주기 보충자료
      • 09 빈 스코프
        • 빈 스코프 보충자료
      • 10 스프링 MVC
        • 스프링 MVC 보충자료
        • 데이터베이스 연동에 필요한 부분
      • 11 Validation(검증)
        • Validation(검증) 보충자료
      • 12 Bean Validation(빈검증)
        • Bean Validation(빈검증) 보충자료
      • 13 예외처리
        • 예외처리 보충자료
      • 14 타입변환
      • 15 JDBC(Java Database Connectivity)
      • 16 커넥션풀
      • 17 트랜잭션
        • 트랜잭션 보충자료
      • 18 JDBC 템플릿 활용
      • 19 MyBatis
      • 20 JPA(Java Persistence API)
      • 22 게시판 프로젝트 실습
    • Spring Security
      • 보안(Security)
      • Spring Security
      • 2. Spring Security 알아보기
        • 보안 위협 실제 사례와 방어 전략
      • 3. Spring Security 기본 동작 흐름
      • 4. Spring Security로 인증 권한 추가하기
        • Spring Security의 인증 및 인가
      • 5. Spring Security에서 세션 관리하기
        • 세션(Session)과 쿠키(Cookie) 비교, 토큰(Token)과의 관계
        • 해싱 및 해싱알고리즘
        • base64
      • 6. Spring Security 악용 보호
        • SameSite
      • 7. Spring Security로 인가 권한 추가하기
      • 8. Bcrypt(비크립트) 암호화
      • OAuth2 적용하기
  • 네트워크
    • HTTP
    • OSI 7계층
  • DB&SQL
    • 01 Database(데이터베이스)와 SQL 개요
    • 02 관계형 모델
    • 03 집합
    • 04 JOIN 연산
    • 05 MySQL
      • 세이브포인트
      • DBeaver, Mysql 오토커밋 설정 관련
    • 06 SQL 기초
      • 예시데이터 쿼리문
    • 07 SQL 실습
      • 실습 스키마
    • 08 Join 활용
      • 실습스키마
    • 09 SQL 활용
      • 실습스키마
    • 10 정규화
      • 실습 스키마
    • 데이터타입
    • 예시 프로젝트 스키마 구성
  • AWS
    • SSL 연결하기
    • 보충설명
Powered by GitBook
On this page
  • 관계형 모델
  • 관계형 모델의 정의
  • 관계형 모델의 역사
  • 릴레이션 (Relation)
  • 릴레이션의 특징
  • 속성(Attribute) & 튜플(Tuple) & 도메인(Domain)
  • 속성(Attribute)
  • 튜플(Tuple)
  • 도메인(Domain)
  • 관계형 모델과 집합
  1. DB&SQL

02 관계형 모델

관계형 모델

관계형 모델의 정의

  • 관계형 모델이란 실제 세계의 데이터를 ‘관계’라는 개념을 사용해 표현한 데이터 모델

관계형 모델의 역사

  • 관계형 모델은 1970년대 IBM의 연구원인 에드거 F. 커드(Edgar F. Codd)가 제안하여 데이터를 릴레이션(Relation)이라 불리는 표(Table) 형식으로 표현하고, 데이터를 체계적이고 논리적으로 관리할 수 있도록 하는 데이터베이스 관리 이론을 개발한 것으로부터 발전함

  • 관계형 모델은 현재 대부분의 데이터베이스 관리 시스템(DBMS)의 이론적 기초를 제공

릴레이션 (Relation)

  • 릴레이션이란 데이터가 행(Row)과 열(Column)로 구성된 2차원 표 형태로 표현된 데이터 구조를 의미함

  • 관계형 데이터베이스에서는 테이블(Table)이라고 부르고 각 테이블은 고유한 이름을 가짐

  • 릴레이션은 제목(Heading)과 본체(Body)로 구성되어 있음

    • 제목은 속성(Attibute, 릴레이션의 열)이 n개 모인 집합이고 이 속성은 이름과 데이터 형으로 되어 있음

    • 본체는 속성값의 집합인 튜플(tuple, 릴레이션의 행)의 집합

릴레이션의 특징

  • 순서가 없음: 릴레이션의 행과 열은 순서가 없으며, 데이터베이스에서 행과 열의 순서는 논리적으로 중요하지 않음

  • 중복이 없음: 각 행은 고유해야 하며, 동일한 데이터를 가진 행이 두 번 이상 나타날 수 없음

속성(Attribute) & 튜플(Tuple) & 도메인(Domain)

속성(Attribute)

  • 릴레이션의 열을 의미하며, 데이터의 특성을 나타내는 요소

  • 각 속성은 릴레이션 내에서 고유한 이름을 가지며, 해당 열에 저장될 수 있는 값의 타입과 제약 조건을 정의함

  • 학생 테이블에서 학번, 이름, 나이, 전공 등이 속성에 해당함

튜플(Tuple)

  • 릴레이션의 행을 의미하며, 데이터베이스 내에서 하나의 레코드(Record)를 나타냄

  • 각 튜플은 속성 값들의 집합

  • 학생 테이블에서 하나의 튜플은 '학번', '이름', '나이', '전공'과 같은 속성 값들을 가짐

도메인(Domain)

  • 속성이 가질 수 있는 값의 집합 또는 범위

  • 각 속성은 특정 도메인에 속하며, 도메인은 속성에 허용되는 값의 타입과 제약 조건을 정의함

  • '성별' 속성의 도메인은 '남', '여'로 제한될 수 있음. '나이' 속성의 도메인은 0에서 120 사이의 정수로 정의될 수 있음

관계형 모델과 집합

  • 관계형 모델은 수학적 집합 이론을 기반으로 데이터베이스의 구조와 조작을 정의함

  • 집합은 객체들의 모임을 정의하고 다루는 학문이고 관계형 모델에서는 이 집합 이론의 개념을 차용하여 테이블과 데이터 간의 관계를 정의

  • 집합 이론은 관계형 모델에서 데이터가 저장되고 관리되는 방식에 큰 영향을 미치며, 데이터베이스의 핵심 개념을 이해하는 데 중요한 역할을 함 따라서 관계형 모델을 이해하기 위해선 집합의 개념을 우선적으로 알아야 할 필요가 있음

Previous01 Database(데이터베이스)와 SQL 개요Next03 집합

Last updated 5 months ago