초판이 나온 후 오랜 시간이 흘렀습니다. 그동안 IT 분야에도 많은 변화가 있었고 최근에는 4차 산업혁명, 빅데이터, 인공지능과 같은 용어들이 주목받고 있습니다. 이러한 기술 변화의 기반을 이루고 있는 것이 바로 데이터입니다. 상업용 컴퓨터가 만들어질 당시 주목받았던 데이터가 다시금 주목받고 있는 것입니다. 데이터를 가공하고 처리하고 분석하여 유용한 정보를 얻어내기 위한 수많은 기술이 개발되고 있지만, 데이터를 관리하기 위한 기본적인 도구로서 데이터베이스는 여전히 중요한 자리를 차지하고 있습니다. 데이터 관련 직종에 입문하기를 원하는 사람들은 기본적으로 데이터베이스를 다룰 줄 알아야 합니다. 여기에다 데이터베이스를 설계할 수 있는 능력까지 갖춘다면 금상첨화일 것입니다. 이 교재는 데이터베이스 설계에 대한 기본적인 지식을 전달하고자 집필되었습니다. 여러 번 개정했는데 이번 개정에서 주요하게 달라진 점은 다음과 같습니다.
1. 데이터베이스 설계 도구를 erwin으로 변경하였습니다. erwin은 데이터베이스 설계 또는 모델링 도구 중 가장 널리 알려진 도구이며, 본 교재에서 전달하고자 하는 지식을 실습해 보기에 충분한 기능을 갖추고 있습니다. erwin 도구에 익숙해진다면 다른 설계 도구들도 쉽게 다룰 수 있을 것입니다.
2. 본 교재의 실습 대상 DBMS를 MySQL로 변경하였습니다. MySQL은 Oracle에서 제공하는 오픈소스 소프트웨어로서 비교적 단순하여 입문용 데이터베이스로서 적합합니다. 특별히 MySQL을 효과적으로 이용할 수 있도록 MySQL Workbench라는 사용자 인터페이스를 제공하고 있어서 쉽게 DBMS를 이용, 관리할 수 있도록 지원합니다. MySQL Workbench의 이용 방법은 부록에 상세히 설명하였습니다.
Contents
PART 01 데이터베이스 개요
CHAPTER 01 관계형 데이터베이스의 주요 개념
1.1 데이터베이스의 역사
1.2 관계형 데이터베이스 용어
1.3 기본키와 외래키
1.4 뷰
1.5 SQL 언어
연습문제
CHAPTER 02 정보시스템 구축 절차와 데이터베이스 설계
2.1 추상화와 모델링
2.2 데이터베이스 설계의 개념
2.3 정보시스템 구축과 데이터베이스 설계
2.4 데이터베이스 설계의 상세 과정
연습문제
PART 02 논리적 데이터베이스 설계
CHAPTER 03 데이터 모델링의 주요 개념
3.1 개요
3.2 엔티티
3.3 속성
3.4 관계
3.5 주식별자와 외래식별자
3.6 ERD 표기법
연습문제
실전 예제
CHAPTER 04 모델링 도구
4.1 모델링 도구 개요
4.2 모델링 도구 따라하기
4.3 관계의 설정
4.4 ERD를 레별별로 보기
4.5 주석문의 삽입
연습문제
CHAPTER 05 업무 분석
5.1 개요
5.2 문서 및 자료 수집
5.3 담당자 인터뷰
5.4 분석 내용의 정리
5.5 업무분석 사례 : 도서관 관리
연습문제 150
CHAPTER 06 엔티티의 정의
6.1 개요
6.2 엔티티 다시 보기
6.3 엔티티 도출 과정
6.4 업무 기술서에서 엔티티 도출의 예
6.5 장부/전표에서 엔티티 도출의 예
6.6 엔티티 도출의 예 : 도서관 관리
연습문제
실전 예제
CHAPTER 07 식별자, 관계, 속성의 정의
7.1 개요
7.2 주식별자의 정의
7.3 관계/외래식별자의 정의
7.4 업무 규칙의 정의
7.5 속성의 정의
7.6 관계, 식별자, 속성의 도출 사례 : 도서관 관리
연습문제
실전 예제
CHAPTER 08 정규화
8.1 정규화 개요
8.2 정규화 과정
8.3 정규화에서 엔티티의 분리
8.4 정규화가 필요 없는 설계 기법
8.5 정규화 사례 : 도서관 관리
연습문제
실전 예제
CHAPTER 09 도메인과 용어사전의 정의
9.1 도메인의 정의
9.2 용어사전의 정의
9.3 모델링 도구를 이용한 도메인의 작성
9.4 도메인, 용어사전의 사례 : 도서관 관리
연습문제
CHAPTER 10 모델의 검토
10.1 개요
10.2 엔티티의 검토
10.3 속성의 검토
10.4 관계의 검토
10.5 M:N 관계의 해소
10.6 프로세스 모델과의 통합 검토
10.7 모델의 검토 사례 : 도서관 관리
연습문제
실전 예제
PART 03 물리적 데이터베이스 설계
CHAPTER 11 논리적 설계를 물리적 설계로 전환하기
11.1 개요
11.2 테이블, 컬럼, 키로의 전환
11.3 반정규화
11.4 뷰의 설계
11.5 인덱스의 설계
11.6 테이블 기술서
11.7 물리적 설계의 예 : 도서관 관리
연습문제
CHAPTER 12 데이터베이스의 구축
12.1 개요
12.2 수작업에 의한 데이터베이스 구축
12.3 모델링 도구에 의한 데이터베이스 구축
12.4 역공학에 의한 데이터베이스 분석
12.5 사용자, 역할, 권한 관리
12.6 DB 구축의 예 : 도서관 관리
연습문제
부록
01 설계 사전
02 웹사이트 게시판을 위한 DB 설계
03 erwin 사용자 테마 설정 방법
04 MySQL Workbench 기본 사용법
05 ODBC 설치 방법