황규진 2024. 7. 11. 09:41

MySQL Workbench 주요 기능

  • 데이터베이스 연결 기능
  • 인스턴스 관리
  • 위저드를 이용한 MySQL의 동작
  • 통합된 기능의 SQL 편집기
  • 데이터베이스 모델링 기능
  • 포워드/리버스 엔지니어링 기능
  • 데이터베이스 내보내기 /가져오기
  • 데이터베이스 계정관리

 

프로젝트

SECTION 01 프로젝트의 진행단계

프로젝트

  • 현실세계의 업무를 컴퓨터 시스템으로 옮겨놓는 일련의 과정
  • 대규모의 프로그램을 작성하기 위한 전체과정
  • 분석과 설계 작업 등한시 → ‘소프트웨어 개발 방법론’의 대두
  • 폭포수 모델

 

다이어그램 (EER Diagram)

  • 포워드 다이어그램
  • 리버스 다이어그램

 

데이터베이스 모델링

  • 개념적 모델링
    • 데이터베이스에 저장될 정보의 개념적인 구조를 정의하는 단계입니다.
    • 엔티티(Entity), 속성(Attribute), 관계(Relationship)를 식별하고 이들 간의 관계를 정의합니다.
    • 일반적으로 개념적 모델은 Entity-Relationship (ER) 다이어그램으로 표현됩니다.
    • 이 단계에서는 데이터베이스의 핵심 개념만을 다루며, 구현 세부 사항은 고려하지 않습니다.
  • 논리적 모델링
    • 개념적 모델을 기반으로 데이터베이스 관리 시스템(DBMS)에 맞는 논리적 구조를 정의하는 단계입니다.
    • 엔티티는 테이블로, 속성은 열(column)로, 관계는 외래 키(foreign key)로 표현됩니다.
    • 데이터 타입, 제약 조건, 인덱스 등의 논리적 설계 요소가 추가됩니다.
    • 이 단계에서는 DBMS에 독립적인 논리적 모델을 생성합니다.
  • 물리적 모델링
    • 논리적 모델을 특정 DBMS에 맞게 구현하는 단계입니다.
    • DBMS의 특성에 따라 데이터 타입, 저장 구조, 파티셔닝, 클러스터링 등의 물리적 구현 세부 사항이 정의됩니다.
    • 성능 최적화를 위한 인덱스, 파티셔닝, 물리적 저장 구조 등이 결정됩니다.
    • 이 단계에서는 DBMS 종속적인 물리적 모델이 생성됩니다.

 

테이블 간의 업무적인 연관성 정의

  • 주 (Master)가 되는 쪽이 부모 테이블
    • 주가 되는 고객 테이블이 부모, 상세가 되는 구매 테이블이 자식이 됨
  • 기본 키(PK, Primary Key)
    • 중복되지 않고 비어있지 않아야함
  • 외래 키(FK, Foreign Key)
    • 외래 키로 부모 테이블에서 유일하게 하나의 정보를 얻을 수 있음
  • 제약조건
    • 새로운 데이터 들어갈 때는 부모 테이블에 먼저 넣어야 함
    • 데이터 삭제 시에는 자식 테이블에서도 지워야함

 

정의한 테이블을 다이어그램으로 만들기

  • Workbench 실행하고 localhost로 접속, 열린 쿼리 창 모두 닫기
  • 모델 다이어그램 작성
    • NewModel
    • Edint Schema
    • Add Diagram
  • Place a New Table 아이콘 클릭 후 빈 화면에서 마우스 클릭하면 그 위치에 테이블 생성