데이터베이스

DATABASE STEP 30 - Modeling

2023. 3. 23. 17:42
728x90

★ 데이터베이스 설계

  1. 요구사항 수집 및 분석
  2. 개념 데이터 모델링
  3. 논리 데이터 모델링
  4. 물리 데이터 모델링
  5. 데이터베이스 구축

 

★ 데이터 모델링

  • 요구 분석 기반 > 수집한 데이터 > 분석 > 저장 구조 생성 > 도식화 > ERD(산출물)
  • 데이터 저장하기 위한 데이터 구조를 설계하는 작업
  • DBMS 종류를 결정하지 않는다.
  • 개념 데이터 모델링 > 간단하게 표현한 설계도 > 테이블 + 컬럼 + 관계
  • 논리 데이터 모델링 > 관계형 데이터베이스 성질 반영 > 속성 + 도메인 + 키 > 제대로된 설계도
  • 물리 데이터 모델링 > 특정 DBMS 결정 > 오라클 선정 + 반영 > 물리적 설정..

 

■ 1. ERD, Entity Relationship Diagram

  • 엔티티간의 관계를 표현한 그림
  • 관계형 데이터베이스 모델링 기법 중 하나
  • 손, 오피스, 전문툴(exERD, ER-Win 등)

■ 2. Entity, 엔티티

  • 다른 Entity와 분류될 수 있고, 다른 Entity에 대해 정해진 관계를 맺을 수 있는 데이터 단위
  • 릴레이션 = 객체 = 레코드 = 엔티티 = 테이블(행)
            a. 학생 정보 관리
                - 정보 수집 : 아이디, 학생명, 나이, 주소, 연락처 ...
                - 학생(_아이디_, 학생명, 나이, 주소, 연락처)
                - 이때의 학생을 엔티티라고 부름.
                
            b. 강의실 정보 관리
                - 정보 수집 : 강의실 호수, 크기, 인원수, 용도, 면적 ...
                - 강의실(강의실 호수, 크기, 인원수)
                - 이때의 강의실을 엔티티라고 부름.

■ 3. Attribute, 속성

  • 엔티티를 구성하는 정보
  • 컬럼

■ 4. Entity relationship, 엔티티 관계

  • 학생(이름, 나이 ...)
  • 교사(이름, 담당과목..)
  • 학급(학년, 반..)
  • 학생 <-> 학급 <-> 교사

 

★ ERD 그리는 방법 > Entity, Attribute, Relationship 등을 표현하는 방법

  • 1. Entity
    • 사각형 
    • 이름을 작성
    • ERD 내에 동일한 엔티티명 사용 금지
  •  2. Attribute
    • 동그라미
    • 엔티티에 연결
    • 추가 표기사항(속성에 대한 성질 기술)
              a. NN, Notnull
                  - 해당 속성은 반드시 작성해야 한다.
                  - 필수 값
                  
              b. ND, NotDuplicate
                  - 해당 속성은 중복될 수 없다.
                  - 유일값(Unique)
                  
              1. 중복되면 안되고, 생략되면 안된다.(NN(*), ND(#))
                  - #*속성명
              2. 생략되면 안된다. (NN)
                  - *속성명
              3. 중복되면 안된다. (ND)
                  - #속성명
              4. 중복되고 되고, 생략되고 된다.
                  - 속성명
                  - o속성명
                  - optional
  • 3. Relationship 
    • 마름모
    • 엔티티와 엔티티의 관계
    • 가장 중요한 표현(****)
    • 관계의 패턴
    • A엔티티 : B엔티티
              a. 1:1
                  - 일대일 관계
              b. 1:N
                  - 일대다 관계
              c. N:M
                  - 다대다 관계

 

■ ex) 비디오 대여점 테이블 구조를 활용한 모델링 작업의 모습

비디오 대여점 ERD

■ ex) 모델링 ex)

ER 다이어그램 만드는법

 

■ 모델링 순서

  • 1. 엔티티 정의
    • - 장르
    • - 비디오
    • - 회원         
  • 2. 속성 정의
  • 3. 식별자 선언
    • - 기본키
    • 개념적 모델링
  • 4. 논리 모델링 > 논리 ERD
    • 1~3을 반복 > 전문적으로 그리기
  • 5. 물리 데이터 모델링 > 오라클 맞게 구체적
    • 물리명(식별자) 생성 > name 
    • 자료형 > varchar2
    • 길이 > 30
    • 도메인 > 2자~5자 이내의 한글
    • 제약사항 생성

■ 모델링 모습

비디오 대여점 모델링 모습

 

728x90
저작자표시 비영리 변경금지 (새창열림)

'데이터베이스' 카테고리의 다른 글

DATABASE STEP 31 - PL/SQL  (0) 2023.03.27
DATABASE SEMI PROJECT - MOVIE RANK DATA  (0) 2023.03.24
DATABASE STEP 29 - Transaction  (0) 2023.03.23
DATABASE STEP 28 - Hierarchical  (0) 2023.03.23
DATABASE STEP 27 - WITH  (0) 2023.03.23
'데이터베이스' 카테고리의 다른 글
  • DATABASE STEP 31 - PL/SQL
  • DATABASE SEMI PROJECT - MOVIE RANK DATA
  • DATABASE STEP 29 - Transaction
  • DATABASE STEP 28 - Hierarchical
IT의 큰손
IT의 큰손
IT계의 큰손이 되고 싶은 개린이의 Log 일지
IT의 큰손
Developer Story House
IT의 큰손
전체
오늘
어제
  • 분류 전체보기 (457)
    • 정보처리기사 필기 (18)
    • 정보처리기사 실기 (12)
    • 정보처리기사 통합 QUIZ (12)
    • 빅데이터 (11)
    • 안드로이드 (11)
    • 웹페이지 (108)
    • 자바 (49)
    • SQLD (3)
    • 백준 알고리즘 (76)
    • 데이터베이스 (41)
    • 깃허브 (2)
    • Library (14)
    • Server (31)
    • 크롤링&스크래핑 (3)
    • Spring (23)
    • Vue.js (13)
    • React (27)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

  • Developer Stroy House

인기 글

태그

  • 데이터베이스
  • IT개발자
  • 웹페이지
  • jsp
  • 웹개발
  • 정보보안전문가
  • it
  • 개발블로그
  • 백엔드
  • DBA
  • ajax
  • DB
  • 프론트엔드
  • 웹개발자
  • React
  • JavaScript
  • 백준
  • jquery
  • 개발자
  • 코딩테스트
  • 알고리즘
  • IT자격증공부
  • html
  • 앱개발자
  • 정보처리기사필기
  • IT자격증
  • css
  • java
  • 자바
  • 정보처리기사

최근 댓글

최근 글

Designed By hELLO
IT의 큰손
DATABASE STEP 30 - Modeling
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.