SlideShare a Scribd company logo
DB
39ghwjd@naver.com
Contents
1. DB?
2. Entity
3. Normalization
DB
Database
: 전자적으로 저장되고 액세스되는 데이터의 조직화된 모음
File System, Cluster, Cloud etc…
하지만, 우리는 DB를 직접 만지는가? ㄴㄴ
참고
왜 DB를 알아야 하는가?
- Persistence –
- 컴퓨터 전기 나가서 데이터 날아가면 님이 책임? -
DB에선…
Dirty Write + Transaction Journaling
참고
왜 DB를 알아야 하는가?
- Persistence / Dirty Writes –
마지막 쓰기 이후에 수정된 => Dirty
시스템 상태 부분만 저장소에 쓰는 것 => Write
Ex) 문서 편집 – 마지막 저장 이후에 실제로 변경된 문서 부분만 저
장함
참고
왜 DB를 알아야 하는가?
- Persistence / Journaling –
각 이벤트가 시스템에 적용되기 전에
로그(Journal)에 이벤트를 저장하는 프로세스
시작 시 저널을 읽고, 각 이벤트를 시스템에 다시 적용해
시스템 장애 or 종료 시 데이터 손실 방지
참고
왜 DB를 알아야 하는가?
- Persistence / Journaling –
Ex) 파일에 기록 – 사진 편집 프로그램
“실행 취소 / 다시 실행“ 이력은
언제든지 편집된 상태를 복구할 수 있는 저널을 구성
Transaction Log / Redo Log
참고
ENTITY
Entity
1. 명사 (사람, 장소, 물건, 사건, 개념 등)
2. 업무상 관리가 필요한 관심사
=> 업무에 필요하고 유용한 정보를 저장 & 관리하기 위한 집합적인 것
Entity 특징
1. 업무에서 필요로 하는 정보
ex) 환자 - 인사업무 영역에서 관리 X, 병원에서는 가장 중요한
Entity가 됨
2. 식별이 가능해야 함
ex) 직원을 구분할 수 있는 방법 - 이름은 X, 사원번호는 가능
3. 인스턴스의 집합
- 하나의 엔터티는 여러 개의 인스턴스를 포함
Entity 특징
4. 업무프로세스가 그 엔터티를 반드시 이용해야 함
5. 속성을 포함
6. 관계의 존재
- 다른 Entity와 최소 한 개 이상의 관계가 존재해야 함
정규화
정규화 기본
DB에서 데이터 처리할 때 성능이라고 하면?
조회 성능 / 입력, 수정, 삭제 성능
- 정규화 수행 -
데이터를 결정하는 결정자에 의해 함수적 종속을 가지고 있는 일반
속성을 의존자로 해
입력,수정,삭제 이상을 제거하는 것
정규화 기본
테이블을 수정(갱신, 삽입, 삭제)시,
충분히 정규화되지 않은 테이블에서 부작용 발생 가능
- 갱신 이상, 삽입 이상, 삭제 이상 -
참고
정규화 기본
Update anomaly (갱신 이상)
참고
같은 정보가 복수개의 행에서 표현됨
(갱신 - 논리적인 모순)
ex) 특정 직원의 주소 변경 시, 여러 개의
레코드를 수정해야 함
why? 그 직원이 속한 모든 주소가 바뀌어
야 함
성공적인 갱신이 이루어지지 않을 경우
(일부만 변경이 되는 경우),
테이블은 모순 상태가 되는 것
정규화 기본
Insertion anomaly (삽입 이상)
참고
어떠한 특정 사실은 전혀 기록되지 않는 경
우
ex) 새 교수를 고용하였을 경우, 그가 아직
맡은 강의가 없어 강의 코드를 null로 하
지 않는 이상
새 교수를 테이블에 추가할 수 없음
정규화 기본
Deletion anomaly (삭제 이상)
참고
데이터의 삭제가 전혀 다른 사실에 대한
데이터의 삭제도 필요로 하게 되는 현상
ex) 한 교수가 임시로 강의를 중단하고자
할 때, 그가 기록된 레코드를 삭제하고자
하면
교수 자체가 사라지게 됨
정규화 기본
정규화 : 점진적이고, 이전 수준이 충족되지 않으면 높은 수준의 DB
정규화를 달성할 수 없음
- 4NF 이상의 정규형은 해결해야 할 문제가 실제로 거의 나타나
지 않음 (학문적 관심!)
참고
정규화 기본
- 전제조건(관계형 모델을 준수하기 위한) : 테이블에는 행을 고유하게
식별하는 기본키가 있어야 함
- ISBN 번호는 책을 고유하게 식별(기본 키 가능)
참고
Title Author Author
Nationalit
y
Format Price Subject Pages Thickness Publisher Publisher
Country
Publicatio
n Type
Genre ID Genre
Name
Beginnin
g
MySQL
Chad
Russell
American Hardcove
r
49.99 520 Thick Apress USA E-book 1 Tutorial
Mysql
Database
Design
정규화 기본
참고
Title Author Author
Nationalit
y
Format Price Subject Pages Thickness Publisher Publisher
Country
Publicatio
n Type
Genre ID Genre
Name
Beginnin
g
MySQL
Chad
Russell
American Hardcove
r
49.99 520 Thick Apress USA E-book 1 Tutorial
Mysql
Database
Design
ISBN Title Author Author
Nationali
ty
Format Price Subject Pages Thicknes
s
Publishe
r
Publishe
r
Country
Publicatio
n Type
Genre
ID
Genre
Name
1590593
324
Beginnin
g
MySQL
Chad
Russell
America
n
Hardcov
er
49.99 520 Thick Apress USA E-book 1 Tutorial
Mysql
Database
Design
제 1 정규화
- 테이블의 각 열에 하나의 값이 있어야 함
(값 집합 or 중첩된 레코드가 포함된 열은 허용 X)
참고
ISBN Title Author Author
Nationali
ty
Format Price Subject Pages Thicknes
s
Publishe
r
Publishe
r
Country
Publicatio
n Type
Genre
ID
Genre
Name
1590593
324
Beginnin
g
MySQL
Chad
Russell
America
n
Hardcov
er
49.99 520 Thick Apress USA E-book 1 Tutorial
Mysql
Database
Design
제 1 정규화
해결책 -> 별도의 Subject 테이블로 빼자
참고
ISBN Title Author Author
Nationali
ty
Format Price Subject Pages Thicknes
s
Publishe
r
Publishe
r
Country
Publicatio
n Type
Genre
ID
Genre
Name
1590593
324
Beginnin
g
MySQL
Chad
Russell
America
n
Hardcov
er
49.99 520 Thick Apress USA E-book 1 Tutorial
Mysql
Database
Design
ISBN Title Auth
or
Auth
or
Natio
nality
Form
at
Price Pages Thick
ness
Publis
her
Publis
her
Count
ry
Public
ation
Type
Genr
e ID
Genr
e
Name
15905
93324
Begin
ning
MySQ
L
Chad
Russe
ll
Ameri
can
Hardc
over
49.99 520 Thick Apres
s
USA E-
book
1 Tutor
ial
Mysql
Database
Design
Subject
Book
제 1 정규화
(추출된 행의 기본키를 참조하는) 외래키 열을 추가해야 함
참고
ISBN Title Auth
or
Auth
or
Natio
nality
Form
at
Price Pages Thick
ness
Publis
her
Publis
her
Count
ry
Public
ation
Type
Genr
e ID
Genr
e
Name
15905
93324
Begin
ning
MySQ
L
Chad
Russe
ll
Ameri
can
Hardc
over
49.99 520 Thick Apres
s
USA E-
book
1 Tutor
ial
ISBN# Subject
1590593324 Mysql
1590593324 Database
1590593324 Design
Subject
Book
제 2 정규화
(추출된 행의 기본키를 참조하는) 외래키 열을 추가해야 함
참고
Title Format Author Author
Nationality
Price Pages Thickness Genre ID Genre Name Publisher ID
Beginning
MySQL
Database
Design and
Optimization
Hardcover Chad
Russell
American 49.99 520 Thick 1 Tutorial 1
Beginning
MySQL
Database
Design and
Optimization
E-book Chad
Russell
American 22.34 520 Thick 1 Tutorial 1
The
Relational
Model for
Database
Management:
Version 2
E-book E.F.Codd British 13.88 538 Thick 2 Popular
science
2
The
Relational
Model for
Database
Management:
Version 2
Paperback E.F.Codd British 39.99 538 Thick 2 Popular
science
2
제 2 정규화
후보 키의 일부가 아닌 모든 속성은 제목에 종속되지만, 가격만 형식에도 종속됨
제 2 정규화 준수 & 중복성 제거
=> 후보 키가 아닌 모든 속성이 후보 키의 일부가 아니라 전체 후보 키에 종속되어야 함
이 Table을 정규화 =>
1. Title을 후보키(기본키)로 만들어 후보 키가 아닌 모든 속성이 전체 후보 키에 종속되도록
2. Price를 별도의 테이블로 추출해 Format에 대한 종속성을 가질 수 있도록 함
참고
제 2 정규화
(추출된 행의 기본키를 참조하는) 외래키 열을 추가해야 함
참고
Title Author Author
Nationalit
y
Pages Thickness Genre ID Genr
e
Name
Publisher
ID
Beginning
MySQL
Database
Design
and
Optimizati
on
Chad
Russell
American 520 Thick 1 Tutor
ial
1
The
Relational
Model for
Database
Manageme
nt: Version
2
E.F.Codd British 538 Thick 2 Popul
ar
scien
ce
2
Title Format Price
Beginning
MySQL
Database
Design and
Optimizatio
n
Hardcover 49.99
Beginning
MySQL
Database
Design and
Optimizatio
n
E-book 22.34
The
Relational
Model for
Database
Managemen
t: Version 2
E-book 13.88
The
Relational
Model for
Database
Managemen
t: Version 2
Paperback 39.99
제 3 정규화
Author Nationality는 Author에 종속되고, 이는 Title에 종속됨
Genre도 마찬가지 => Genre Name은 Title에 종속된 Genre ID에 종속됨
해결책 - Author Nationalty, Genre Name을 각각의 테이블에 배치해
이행적 기능 종속성을 제거
참고
제 3 정규화
Book 테이블에는 여전히 이행적 종속 기능 존재
참고
Title Author Pages Thickness Genre ID Publisher ID
Beginning
MySQL
Database
Design and
Optimization
Chad
Russell
520 Thick 1 1
The Relational
Model for
Database
Management:
Version 2
E.F.Codd 538 Thick 2 2
Title Format Price
Beginning
MySQL
Database
Design and
Optimization
Hardcover 49.99
Beginning
MySQL
Database
Design and
Optimization
E-book 22.34
The
Relational
Model for
Database
Management:
Version 2
E-book 13.88
The
Relational
Model for
Database
Management:
Version 2
Paperback 39.99
Author Author
Nationality
Chad
Russell
American
E.F.Codd British
Genre ID Genre
Name
1 Tutorial
2 Popular
science
Thank you
39ghwjd@naver.com
Database Entity, 정규화에 대해 알아보자.pdf

More Related Content

PDF
b+tree
PDF
Soma search
PDF
2016년 인문정보학 Sql세미나 2/3
PPTX
181215 MS SQL로 알아보는 데이터베이스
PPTX
Database design
PDF
AWS Builders_AWS 300_NoSQL은 왜 어렵게 느껴지는가 왜 필요하며 어떻게 적...
PDF
#1.SQL초보에서 Schema Objects까지(SQL학원/오라클학원/IT실무교육학원/재직자/실업자교육학원추천)
PPTX
101102 endofdb select.1_rdbms
b+tree
Soma search
2016년 인문정보학 Sql세미나 2/3
181215 MS SQL로 알아보는 데이터베이스
Database design
AWS Builders_AWS 300_NoSQL은 왜 어렵게 느껴지는가 왜 필요하며 어떻게 적...
#1.SQL초보에서 Schema Objects까지(SQL학원/오라클학원/IT실무교육학원/재직자/실업자교육학원추천)
101102 endofdb select.1_rdbms

Similar to Database Entity, 정규화에 대해 알아보자.pdf (20)

PPTX
03주차 ddl- table을 만들자
DOCX
MySQL_SQL_Tunning_v0.1.3.docx
PDF
2016년 인문정보학 Sql세미나 1/3
PPT
sqlserver7.0 데이타베이스
PDF
성능 좋은 SQL 작성법
PPTX
파이썬 sqlite 이해하기
PPTX
04주차 ddl- table을 만들자-2
PPT
6.테이블만들기
PPTX
20151024 database
PDF
Fundamentals of Oracle SQL
PPTX
05주차 dml- 자료 관리
PPTX
MySQL_MariaDB-성능개선-202201.pptx
PPTX
효율적인Sql작성방법 4주차
PPT
데이터베이스의 이해
PPTX
컴퓨터개론10
PDF
성공적인웹프로그래밍
PDF
데이터베이스 설계 및 구현 2014-2018년 기말시험 기출문제
PDF
웹 개발 스터디 01 - MySQL
PPTX
데이터베이스 정규화
PDF
토이 프로젝트를 위한 속성 RDB(MySQL) 스터디 2
03주차 ddl- table을 만들자
MySQL_SQL_Tunning_v0.1.3.docx
2016년 인문정보학 Sql세미나 1/3
sqlserver7.0 데이타베이스
성능 좋은 SQL 작성법
파이썬 sqlite 이해하기
04주차 ddl- table을 만들자-2
6.테이블만들기
20151024 database
Fundamentals of Oracle SQL
05주차 dml- 자료 관리
MySQL_MariaDB-성능개선-202201.pptx
효율적인Sql작성방법 4주차
데이터베이스의 이해
컴퓨터개론10
성공적인웹프로그래밍
데이터베이스 설계 및 구현 2014-2018년 기말시험 기출문제
웹 개발 스터디 01 - MySQL
데이터베이스 정규화
토이 프로젝트를 위한 속성 RDB(MySQL) 스터디 2
Ad

More from Ho Jeong Im (11)

PDF
Prefix_sum.pdf
PDF
Packet에 대해서 알아보자.pdf
PDF
REST에 대해 알아봅시다.pdf
PDF
HTTP2에 대해서 알아보자.pdf
PDF
허프만 코드에 대해 그림으로 알아보자.pdf
PDF
Browser Principle에 대해 알아보자.pdf
PDF
CPU Scheduling 알고리즘에는 무엇이 있을까? .pdf
PDF
HTTP가 가지는 특징에는 무엇이 있을까.pdf
PDF
DP 알고리즘에 대해 알아보자.pdf
PDF
OS Process, Thread, CPU Scheduling에 대해 알아봅시다.pdf
PDF
HSTS, Tunneling에 대해 알아보자 .pdf
Prefix_sum.pdf
Packet에 대해서 알아보자.pdf
REST에 대해 알아봅시다.pdf
HTTP2에 대해서 알아보자.pdf
허프만 코드에 대해 그림으로 알아보자.pdf
Browser Principle에 대해 알아보자.pdf
CPU Scheduling 알고리즘에는 무엇이 있을까? .pdf
HTTP가 가지는 특징에는 무엇이 있을까.pdf
DP 알고리즘에 대해 알아보자.pdf
OS Process, Thread, CPU Scheduling에 대해 알아봅시다.pdf
HSTS, Tunneling에 대해 알아보자 .pdf
Ad

Database Entity, 정규화에 대해 알아보자.pdf

  • 3. DB Database : 전자적으로 저장되고 액세스되는 데이터의 조직화된 모음 File System, Cluster, Cloud etc… 하지만, 우리는 DB를 직접 만지는가? ㄴㄴ 참고
  • 4. 왜 DB를 알아야 하는가? - Persistence – - 컴퓨터 전기 나가서 데이터 날아가면 님이 책임? - DB에선… Dirty Write + Transaction Journaling 참고
  • 5. 왜 DB를 알아야 하는가? - Persistence / Dirty Writes – 마지막 쓰기 이후에 수정된 => Dirty 시스템 상태 부분만 저장소에 쓰는 것 => Write Ex) 문서 편집 – 마지막 저장 이후에 실제로 변경된 문서 부분만 저 장함 참고
  • 6. 왜 DB를 알아야 하는가? - Persistence / Journaling – 각 이벤트가 시스템에 적용되기 전에 로그(Journal)에 이벤트를 저장하는 프로세스 시작 시 저널을 읽고, 각 이벤트를 시스템에 다시 적용해 시스템 장애 or 종료 시 데이터 손실 방지 참고
  • 7. 왜 DB를 알아야 하는가? - Persistence / Journaling – Ex) 파일에 기록 – 사진 편집 프로그램 “실행 취소 / 다시 실행“ 이력은 언제든지 편집된 상태를 복구할 수 있는 저널을 구성 Transaction Log / Redo Log 참고
  • 9. Entity 1. 명사 (사람, 장소, 물건, 사건, 개념 등) 2. 업무상 관리가 필요한 관심사 => 업무에 필요하고 유용한 정보를 저장 & 관리하기 위한 집합적인 것
  • 10. Entity 특징 1. 업무에서 필요로 하는 정보 ex) 환자 - 인사업무 영역에서 관리 X, 병원에서는 가장 중요한 Entity가 됨 2. 식별이 가능해야 함 ex) 직원을 구분할 수 있는 방법 - 이름은 X, 사원번호는 가능 3. 인스턴스의 집합 - 하나의 엔터티는 여러 개의 인스턴스를 포함
  • 11. Entity 특징 4. 업무프로세스가 그 엔터티를 반드시 이용해야 함 5. 속성을 포함 6. 관계의 존재 - 다른 Entity와 최소 한 개 이상의 관계가 존재해야 함
  • 13. 정규화 기본 DB에서 데이터 처리할 때 성능이라고 하면? 조회 성능 / 입력, 수정, 삭제 성능 - 정규화 수행 - 데이터를 결정하는 결정자에 의해 함수적 종속을 가지고 있는 일반 속성을 의존자로 해 입력,수정,삭제 이상을 제거하는 것
  • 14. 정규화 기본 테이블을 수정(갱신, 삽입, 삭제)시, 충분히 정규화되지 않은 테이블에서 부작용 발생 가능 - 갱신 이상, 삽입 이상, 삭제 이상 - 참고
  • 15. 정규화 기본 Update anomaly (갱신 이상) 참고 같은 정보가 복수개의 행에서 표현됨 (갱신 - 논리적인 모순) ex) 특정 직원의 주소 변경 시, 여러 개의 레코드를 수정해야 함 why? 그 직원이 속한 모든 주소가 바뀌어 야 함 성공적인 갱신이 이루어지지 않을 경우 (일부만 변경이 되는 경우), 테이블은 모순 상태가 되는 것
  • 16. 정규화 기본 Insertion anomaly (삽입 이상) 참고 어떠한 특정 사실은 전혀 기록되지 않는 경 우 ex) 새 교수를 고용하였을 경우, 그가 아직 맡은 강의가 없어 강의 코드를 null로 하 지 않는 이상 새 교수를 테이블에 추가할 수 없음
  • 17. 정규화 기본 Deletion anomaly (삭제 이상) 참고 데이터의 삭제가 전혀 다른 사실에 대한 데이터의 삭제도 필요로 하게 되는 현상 ex) 한 교수가 임시로 강의를 중단하고자 할 때, 그가 기록된 레코드를 삭제하고자 하면 교수 자체가 사라지게 됨
  • 18. 정규화 기본 정규화 : 점진적이고, 이전 수준이 충족되지 않으면 높은 수준의 DB 정규화를 달성할 수 없음 - 4NF 이상의 정규형은 해결해야 할 문제가 실제로 거의 나타나 지 않음 (학문적 관심!) 참고
  • 19. 정규화 기본 - 전제조건(관계형 모델을 준수하기 위한) : 테이블에는 행을 고유하게 식별하는 기본키가 있어야 함 - ISBN 번호는 책을 고유하게 식별(기본 키 가능) 참고 Title Author Author Nationalit y Format Price Subject Pages Thickness Publisher Publisher Country Publicatio n Type Genre ID Genre Name Beginnin g MySQL Chad Russell American Hardcove r 49.99 520 Thick Apress USA E-book 1 Tutorial Mysql Database Design
  • 20. 정규화 기본 참고 Title Author Author Nationalit y Format Price Subject Pages Thickness Publisher Publisher Country Publicatio n Type Genre ID Genre Name Beginnin g MySQL Chad Russell American Hardcove r 49.99 520 Thick Apress USA E-book 1 Tutorial Mysql Database Design ISBN Title Author Author Nationali ty Format Price Subject Pages Thicknes s Publishe r Publishe r Country Publicatio n Type Genre ID Genre Name 1590593 324 Beginnin g MySQL Chad Russell America n Hardcov er 49.99 520 Thick Apress USA E-book 1 Tutorial Mysql Database Design
  • 21. 제 1 정규화 - 테이블의 각 열에 하나의 값이 있어야 함 (값 집합 or 중첩된 레코드가 포함된 열은 허용 X) 참고 ISBN Title Author Author Nationali ty Format Price Subject Pages Thicknes s Publishe r Publishe r Country Publicatio n Type Genre ID Genre Name 1590593 324 Beginnin g MySQL Chad Russell America n Hardcov er 49.99 520 Thick Apress USA E-book 1 Tutorial Mysql Database Design
  • 22. 제 1 정규화 해결책 -> 별도의 Subject 테이블로 빼자 참고 ISBN Title Author Author Nationali ty Format Price Subject Pages Thicknes s Publishe r Publishe r Country Publicatio n Type Genre ID Genre Name 1590593 324 Beginnin g MySQL Chad Russell America n Hardcov er 49.99 520 Thick Apress USA E-book 1 Tutorial Mysql Database Design ISBN Title Auth or Auth or Natio nality Form at Price Pages Thick ness Publis her Publis her Count ry Public ation Type Genr e ID Genr e Name 15905 93324 Begin ning MySQ L Chad Russe ll Ameri can Hardc over 49.99 520 Thick Apres s USA E- book 1 Tutor ial Mysql Database Design Subject Book
  • 23. 제 1 정규화 (추출된 행의 기본키를 참조하는) 외래키 열을 추가해야 함 참고 ISBN Title Auth or Auth or Natio nality Form at Price Pages Thick ness Publis her Publis her Count ry Public ation Type Genr e ID Genr e Name 15905 93324 Begin ning MySQ L Chad Russe ll Ameri can Hardc over 49.99 520 Thick Apres s USA E- book 1 Tutor ial ISBN# Subject 1590593324 Mysql 1590593324 Database 1590593324 Design Subject Book
  • 24. 제 2 정규화 (추출된 행의 기본키를 참조하는) 외래키 열을 추가해야 함 참고 Title Format Author Author Nationality Price Pages Thickness Genre ID Genre Name Publisher ID Beginning MySQL Database Design and Optimization Hardcover Chad Russell American 49.99 520 Thick 1 Tutorial 1 Beginning MySQL Database Design and Optimization E-book Chad Russell American 22.34 520 Thick 1 Tutorial 1 The Relational Model for Database Management: Version 2 E-book E.F.Codd British 13.88 538 Thick 2 Popular science 2 The Relational Model for Database Management: Version 2 Paperback E.F.Codd British 39.99 538 Thick 2 Popular science 2
  • 25. 제 2 정규화 후보 키의 일부가 아닌 모든 속성은 제목에 종속되지만, 가격만 형식에도 종속됨 제 2 정규화 준수 & 중복성 제거 => 후보 키가 아닌 모든 속성이 후보 키의 일부가 아니라 전체 후보 키에 종속되어야 함 이 Table을 정규화 => 1. Title을 후보키(기본키)로 만들어 후보 키가 아닌 모든 속성이 전체 후보 키에 종속되도록 2. Price를 별도의 테이블로 추출해 Format에 대한 종속성을 가질 수 있도록 함 참고
  • 26. 제 2 정규화 (추출된 행의 기본키를 참조하는) 외래키 열을 추가해야 함 참고 Title Author Author Nationalit y Pages Thickness Genre ID Genr e Name Publisher ID Beginning MySQL Database Design and Optimizati on Chad Russell American 520 Thick 1 Tutor ial 1 The Relational Model for Database Manageme nt: Version 2 E.F.Codd British 538 Thick 2 Popul ar scien ce 2 Title Format Price Beginning MySQL Database Design and Optimizatio n Hardcover 49.99 Beginning MySQL Database Design and Optimizatio n E-book 22.34 The Relational Model for Database Managemen t: Version 2 E-book 13.88 The Relational Model for Database Managemen t: Version 2 Paperback 39.99
  • 27. 제 3 정규화 Author Nationality는 Author에 종속되고, 이는 Title에 종속됨 Genre도 마찬가지 => Genre Name은 Title에 종속된 Genre ID에 종속됨 해결책 - Author Nationalty, Genre Name을 각각의 테이블에 배치해 이행적 기능 종속성을 제거 참고
  • 28. 제 3 정규화 Book 테이블에는 여전히 이행적 종속 기능 존재 참고 Title Author Pages Thickness Genre ID Publisher ID Beginning MySQL Database Design and Optimization Chad Russell 520 Thick 1 1 The Relational Model for Database Management: Version 2 E.F.Codd 538 Thick 2 2 Title Format Price Beginning MySQL Database Design and Optimization Hardcover 49.99 Beginning MySQL Database Design and Optimization E-book 22.34 The Relational Model for Database Management: Version 2 E-book 13.88 The Relational Model for Database Management: Version 2 Paperback 39.99 Author Author Nationality Chad Russell American E.F.Codd British Genre ID Genre Name 1 Tutorial 2 Popular science