design database : sale system

49
Company LOGO Design Database : Sale System THINAPHAN NITHIYUWITH Email : [email protected]

Upload: carlyn

Post on 22-Feb-2016

63 views

Category:

Documents


0 download

DESCRIPTION

Design Database : Sale System. THINAPHAN NITHIYUWITH. Email : [email protected]. Contents. 1. การออกแบบฐานข้อมูล. 2. การออกแบบ Relation Database. 3. ขั้นตอนการออกแบบ E - R Diagram. 4. Mapping E - R Diagram to Relation. 5. สรุป Q&A. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Design Database : Sale System

Company LOGO

Design Database : Sale System

THINAPHAN NITHIYUWITHEmail : [email protected]

Page 2: Design Database : Sale System

2

Contents

การออกแบบฐานขอมล1

การออกแบบ Relation Database

2

ขนตอนการออกแบบ E-R Diagram

3

Mapping E-R Diagram to Relation4

สรป Q&A5

Page 3: Design Database : Sale System

Company LOGO

กรณศกษา : ราน OHO Bookshop

ระบบสารสนเทศเพอการขายหนงสอผานระบบเครอขาย

Page 4: Design Database : Sale System

ขอบเขตการทำางานจดการขอมลสนคาและประเภทสนคาในรานโดยผดแลระบบ

(เจาของราน)จดการขอมลบรษทคคาของสนคาโดยโดยผดแลระบบ (เจาของ

ราน)ลกคาแบงเปน 2 ประเภท คอ ลกคาจร กบลกคาสมาชก โดย

ลกคาสมาชกอาจมการใหสวนลด ลกคาสามารถสมครสมาชกผานการกรอกแบบฟอรมใบสมคร

และระบบออกบตรสมาชกใหกบลกคาลกคาสามารถเลอกซอสนคาไดตามตองการระบบจะทำาการยนยนรายการสงซอ และตดสตอกสนคาลกคาชำาระเงนตามรายการสงซอ และระบบออกใบเสรจรบเงน

ใหกบลกคา

Page 5: Design Database : Sale System

ขอบเขตการทำางานผดแลระบบสามารถทำาการสงซอสนคากบบรษทคคา โดย

ระบบจะออกใบสงซอไปยงบรษทคคาผดแลระบบสามารถทำาการรบสนคาตามรายการสงซอสนคาระบบสามารถแสดงรายงานขอมลพนฐาน อาท เชน ขอมล

ลกคาทเปนสมาชก , ขอมลประเภทสนคา , ขอมลสนคา ระบบสามารถรายงานสนคาใกลหมด (ถงจดสงซอ)ระบบสามารถแสดงยอดขายสนคาสงสด 5 อนดบระบบสามารถแสดงรายการขายสนคาในแตละวน ระบบสามารถแสดขอมลสรปยอดการขาย และผลประกอบ

การในแตละเดอนอน ๆ .... ลองพจารณาเพม

Page 6: Design Database : Sale System

6

Designing Databases is . . . การออกแบบฐานขอมล (

Designing Databases ) มความสำาคญตอการจดการระบบฐานขอมล (DBMS ) ทงนเนองจากขอมลทอยภายในฐานขอมลจะตองศกษาถงความสมพนธของขอมล โครงสรางของขอมลการเขาถงขอมลและกระบวนการทโปรแกรมประยกตจะเรยกใชฐานขอมล

Page 7: Design Database : Sale System

7

ขนตอนการออกแบบ Relation Database

ขนตอนการดำาเนนการ การออกแบบฐานขอมลเชงสมพนธ ม 6 ขนตอน การรวบรวมและวเคราะหความตองการในการใช

ขอมล การเลอกระบบจดการฐานขอมล การออกแบบฐานขอมลในระดบแนวคด การนำาฐานขอมลทออกแบบในระดบแนวคดเขาส

ระบบจดการฐานขอมล การออกแบบฐานขอมลในระดบกายภาพ การนำาฐานขอมลไปใชและการประเมนผล

Page 8: Design Database : Sale System

8

ขนตอนการออกแบบ Relation Database

การรวบรวมและวเคราะหความตองการในการใชขอมล ขนตอนนขอมลจะไดมาจากแบบ

ฟอรมตางๆ เชน ใบสงซอ , ใบเสรจรบเงน , หรอหนาตารายงานทตองการแสดงผล เชน รายงานลกคาทชำาระเงนแลว ,รายงานการสงซอสนคาประจำาวน

Page 9: Design Database : Sale System

9

ขนตอนการออกแบบ Relation Database

การเลอกระบบจดการฐานขอมล ขนตอนนคณตองตดสนใจวาคณจะเลอกใช

DBMS ตวไหน เชน SQLServer, MS Access, MySQL, Oracle ฯ (ไมตองคดมาก คณกเอามาจากบทท 1 ของคณ นอกจากลองไปศกษาดแลวมเหตใหตองเปลยน กเปลยนได )

ทำาไมตองเลอก ? เพราะวาจะเอามากำาหนดชนดของขอมล ตอนทำาเปนตารางจา

Page 10: Design Database : Sale System

10

ขนตอนการออกแบบ Relation Database

การออกแบบฐานขอมลในระดบแนวคด การออกแบบฐานขอมลในระดบแนวความคด

หรอในระดบตรรกะ เปนขนตอนการออกแบบความสมพนธระหวางขอมลในระบบโดยใชแบบจำาลองขอมลเชงสมพนธ ซงอธบายโดยใชแผนภาพแสดงความสมพนธระหวางขอมล (E-R Diagram) จากแผนภาพ E-R Diagram นำามาสรางเปนตารางขอมล (Mapping E-R Diagram to Relation) และใชทฤษฏการ Normalization เพอเปนการรบประกนวาขอมลมความซำาซอนกนนอยทสด

Page 11: Design Database : Sale System

11

ขนตอนการออกแบบ Relation Database

กำาหนด Entity Strong Entity Weak Entity

กำาหนด Attribute Composite attribute

Simple attribute

Single-value attribute

Multivalued attributes

Derived attributes

กำาหนด Primary Key กำาหนด Relationship

1:1 1:M M:N

ชนดความสมพนธ Unary/Recursive Binary Ternary

EER

Page 12: Design Database : Sale System

12

ขนตอนการออกแบบ E-R Diagram : Sale System

1. กำาหนด Entity และ Attribute พรอมพจารณาวาเปน

Entity คอ ขอมลทเราสนใจจะจดเกบขอมล ขอมลหาไดจากไหน ?

•แบบฟอรม •รายงาน •ขอมลอน ๆ ทเราไปหา requirement อาจโดยการพดคย

สมภาษณ หรอแบบสอบถามAttribute คอ รายละเอยดหรอคณลกษณะของ

Entity นน ๆ เชนตองการจดเกบขอมลหนงสอ (Entity)ซง รายละเอยดหนงสอ (Attribute )ประกอบดวย รหสหนงสอ ชอเรอง ผแตง รปภาพ เปนตน

Page 13: Design Database : Sale System

ขนตอนการออกแบบ ขนตอนการออกแบบ EE--R Diagram : Sale SystemR Diagram : Sale System

Page 14: Design Database : Sale System

ขอบเขตการทำางานจดการขอมลสนคาและประเภทสนคาในรานโดยผดแลระบบ

(เจาของราน)จดการขอมลบรษทคคาของสนคาโดยโดยผดแลระบบ (เจาของ

ราน)ลกคาแบงเปน 2 ประเภท คอ ลกคาจร กบลกคาสมาชก โดย

ลกคาสมาชกอาจมการใหสวนลด ลกคาสามารถสมครสมาชกผานการกรอกแบบฟอรมใบสมคร

และระบบออกบตรสมาชกใหกบลกคาลกคาสามารถเลอกซอสนคาไดตามตองการระบบจะทำาการยนยนรายการสงซอ และตดสตอกสนคาลกคาชำาระเงนตามรายการสงซอ และระบบออกใบเสรจรบเงน

ใหกบลกคา

Page 15: Design Database : Sale System

ขอบเขตการทำางานผดแลระบบสามารถทำาการสงซอสนคากบบรษทคคา โดย

ระบบจะออกใบสงซอไปยงบรษทคคาผดแลระบบสามารถทำาการรบสนคาตามรายการสงซอสนคาระบบสามารถแสดงรายงานขอมลพนฐาน อาท เชน ขอมล

ลกคาทเปนสมาชก , ขอมลประเภทสนคา , ขอมลสนคา ระบบสามารถรายงานสนคาใกลหมด (ถงจดสงซอ)ระบบสามารถแสดงยอดขายสนคาสงสด 5 อนดบระบบสามารถแสดงรายการขายสนคาในแตละวน ระบบสามารถแสดขอมลสรปยอดการขาย และผลประกอบ

การในแตละเดอนอน ๆ .... ลองพจารณาเพม

Page 16: Design Database : Sale System

Entity Attribute Entity Attribute และ และ PKPKจากขอบเขตของระบบ เราสามารถคนหา Entity และกำาหนด

Attribute และ PKได ดงนจดการขอมลสนคาและประเภทสนคาในรานโดยผดแล

ระบบ (เจาของราน) Entity หนงสอ(สนคา ) : Book (รหสหนงสอ , ชอเรอง ,

ผแตง , สำานกพมพ , isbn, รปหนงสอ , ราคาทน , ราคาขาย ,จำานวนคงเหลอ , จดสงซอ , เรองยอ)

Entity หมวดหม(ประเภทสนคา): Category (รหสหมวด , ชอหมวด)

Book

รหสหนงสอ

ชอเรอง

ผแตง

สำานกพมพ

ISBN รป ราคาทน

ราคาขาย

จำานวนคงเหลอ

จดสงซอ

เรองยอ

Category

รหสหมวดชอหมวด

Page 17: Design Database : Sale System

Entity Attribute Entity Attribute และ และ PKPK จดการขอมลบรษทคคาของสนคาโดยโดยผดแลระบบ

Entity บรษทคคา : Partner (รหสบรษท , ชอบรษท ,ทอย , เบอรโทร , แฟกซ , ชอ-สกลผตดตอ, อเมล)

ลกคาแบงเปน 2 ประเภท คอ ลกคาจร กบลกคาสมาชก โดยลกคาสมาชกอาจมการใหสวนลด โดยลกคาสามารถสมครสมาชกผานการกรอกแบบฟอรมใบสมคร และระบบออกบตรสมาชกใหกบลกคา Entity ลกคา : Member (รหสสมาชก , ชอ-สกล , ท

อย , เบอรโทร , อเมล )

Partner

รหสบรษท

ชอบรษท

ทอยเบอรโทร

แฟกซ

ชอ-สกลผตดตอ

อเมล

Member

รหสสมาชก

ชอ-สกลทอย

เบอรโทร

อเมล

Page 18: Design Database : Sale System

Entity Attribute Entity Attribute และ และ PKPKระบบจะทำาการยนยนรายการขายสนคา และตดสตอก

สนคา Entity รายการขาย(สนคา ) : Sale_Orders (เลขท

รายการขาย , วนทขาย , ยอดเงนรวมสทธ,เลขทใบเสรจ )ผดแลระบบสามารถทำาการสงซอสนคากบบรษทคคา

โดยระบบจะออกใบสงซอไปยงบรษทคคา Entity รายการสงซอ(สนคา)กบบรษทคคา :

Purchase_Orders (เลขทใบสงซอ , วนทสงซอ , ยอดเงนรวมสทธ , สถานะการรบหนงสอ)

Sale_Orders

เลขทรายการขาย

วนท ยอดรวมสทธ

เลขทใบเสรจ

Purchase_Orders

เลขทรายการสงซอ

วนท ยอดรวมสทธ

สถานะการรบ

Page 19: Design Database : Sale System

Relationship

กำาหนดความสมพนธระหวาง Entity ทง 6 ทมความเกยวของกน 1. Entity หนงสอ กบ Entity หมวดหม มความสมพนธในลกษณะM:1 คอ หนงสอ 1 เลม จดอยได

1 หมวดหม และในทางกลบกน 1 หมวดหม มหนงสอได หลายเลม

Book CategoryhasM 1

รปความสมพนธท 1

• รหสหนงสอ• ชอเรอง• ผแตง• สำานกพมพ• ISBN• รปหนงสอ • ราคาทน• ราคาขาย• จำานวนคงเหลอ• จดสงซอ• เรองยอ

• รหสหมวดหนงสอ• ชอหมวด

Page 20: Design Database : Sale System

Relationship

2 .Entity หนงสอ กบ Entity บรษทคคา มความสมพนธในลกษณะM:1 คอ หนงสอ 1 เลม จดจำาหนายโดยบรษทคคา 1 บรษท และในทางกลบกน

1 บรษท จดจำาหนายหนงสอได หลายเลม

Book PartnerhasM 1

รปความสมพนธท 2

• รหสหนงสอ• ชอเรอง• ผแตง• สำานกพมพ• ISBN• รปหนงสอ • ราคาทน• ราคาขาย• จำานวนคงเหลอ• จดสงซอ• เรองยอ

• รหสบรษทคคา• ชอบรษท• ทอย• เบอรโทร• แฟกซ• อเมล• ชอ-สกลผตดตอ

Page 21: Design Database : Sale System

Relationship

3. Entity ลกคา(สมาชก ) กบ Entity หนงสอ มความสมพนธในลกษณะM:N คอ ลกคา(สมาชก ) 1 คน ซอหนงสอไดหลายเลม และหนงสอ 1 เลม กสามารถกลกคา(สมาชก ) ซอไดหลายคน หรอถามองในมมผขาย อาจอธบายไดวา รานขายหนงสอใหกบลกคา โดยหนงสอ 1 เลมขายใหลกคาได หลายคน และ ทางรานสามารถขายหนงสอได ใหกบลกคาแตละคนได หลายเลม

Member BookhasM N

Page 22: Design Database : Sale System

Relationship

จากความสมพนธดงกลาว ทำาใหเกดจงเกด Composite Entity ใบรายการขาย ขนดงนน รปภาพความสมพนธขางตนจงถกเปลยนเปน

Member BookhasM N

Member Sale_Ordershas1 M BookhasM N

Page 23: Design Database : Sale System

Relationship

จากความสมพนธ ใบรายการขาย กบ หนงสอ มลกษณะM:N คอ ใบรายการขาย 1 ใบมหนงสอไดหลายรายการ และหนงสอ 1 เลมกสามารถอยไดหลายใบรายการขาย จงเกด Composite Entity รายละเอยดใบรายการขาย

Member Sale_Ordershas1 M BookhasM N

รปความสมพนธท 3

• รหสสมาชก• ชอ-สกล• ทอย• เบอรโทร• อเมล

• รหสหนงสอ• ชอเรอง• ผแตง• สำานกพมพ• ISBN• รปหนงสอ • ราคาทน• ราคาขาย• จำานวนคงเหลอ• จดสงซอ• เรองยอ

• เลขทรายการขาย• วนท• ยอดเงนรวมสทธ• เลขทใบเสรจ

• จำานวนทขาย

Page 24: Design Database : Sale System

Relationship

4. Entity ใบรายการสงซอหนงสอ(บรษทคคา ) กบ Entity หนงสอ มความสมพนธในลกษณะM:N คอ ใบรายการสงซอหนงสอ 1 ใบ สามารถสงซอหนงสอจากบรษทคคาได หลายรายการ และ หนงสอ 1รายการกสามารถอยไดหลายใบรายการสงซอ ณ วนเวลาทตางกน

Purchase_Orders BookhasM N

Page 25: Design Database : Sale System

Relationship

จากความสมพนธดงกลาว ทำาใหเกดจงเกด Composite Entity รายละเอยดใบรายการสงซอ ขนดงนน

Purchase_Orders BookhasM N

รปความสมพนธท 4

• รหสหนงสอ• ชอเรอง• ผแตง• สำานกพมพ• ISBN• รปหนงสอ • ราคาทน• ราคาขาย• จำานวนคงเหลอ• จดสงซอ• เรองยอ

• เลขทใบรายการสงซอ• วนทซอ• ยอดเงนรวมสทธ• สถานะการบสนคา• จำานวนทสงซอ

Page 26: Design Database : Sale System

E-R Diagram

นำารปความสมพนธทง 4 มาเชอมโยงกน

Book CategoryhasM 1

PartnerhasM 1

Member Sale_Ordershas1 M

M

N

has

Purchase_OrdersM

hasN

Page 27: Design Database : Sale System

Mapping E-R to RelationMapping E-R to Relation กอน Map จะไดขอมลดงน

EntityBook Book(รหสหนงสอ , ชอเรอง , ผแตง , สำานกพมพ ,

isbn, รปหนงสอ , ราคาทน , ราคาขาย , จำานวนคงเหลอ ,จดสงซอ , เรองยอ)

Category Category(รหสหมวด , ชอหมวด)Partner Partner (รหสบรษท , ชอบรษท , ทอย , เบอรโทร ,

แฟกซ , ชอ-สกลผตดตอ, อเมล)Member Member (รหสสมาชก , ชอ-สกล , ทอย , เบอรโทร ,

อเมล )Sale_Orders

Sale_Orders (เลขทรายการขาย , วนทขาย , ยอดเงนรวมสทธ , เลขทใบเสรจ )

Purchase_Orders

Purchase_Orders (เลขทใบสงซอ , วนทซอ ,ยอดเงนรวมสทธ , สถานะการรบสนคา )

Page 28: Design Database : Sale System

Mapping E-R to RelationMapping E-R to Relation หลง Map จะไดขอมลดงนEntity Relation

Book Book(รหสหนงสอ , ชอเรอง , ผแตง , สำานกพมพ ,isbn, รปหนงสอ , ราคาทน , ราคาขาย , จำานวนคงเหลอ ,จดสงซอ , เรองยอ , รหสหมวด* , รหสบรษท* )

Category Category(รหสหมวด , ชอหมวด)Partner Partner (รหสบรษท , ชอบรษท , ทอย , เบอรโทร ,

แฟกซ , ชอ-สกลผตดตอ, อเมล)Member Member (รหสสมาชก , ชอ-สกล , ทอย , เบอรโทร ,

อเมล )Sale_Orders

Sale_Orders (เลขทรายการขาย , วนทขาย , ยอดเงนรวมสทธ , เลขทใบเสรจ , รหสสมาชก* )

Purchase_Orders

Purchase_Orders (เลขทใบสงซอ , วนทซอ ,ยอดเงนรวมสทธ , สถานะการรบสนคา )

Page 29: Design Database : Sale System

Mapping E-R to RelationMapping E-R to Relation หลง Map จะไดขอมลดงน

(ตอ)Entity RelationOrders_Detail

Orders_Detail(เลขทรายการขาย* , รหสหนงสอ* , จำานวนทขาย)

Purchase_Detail

Purchase_Detail(เลขทใบสงซอ* , รหสหนงสอ* , จำานวนทสงซอ)

Page 30: Design Database : Sale System

Normalization

พจารณาจากความสมพนธระหวาง attribute ของ entity ทง 8 พบวา เปน 3NF แลวเนองจาก เปน

2 NF แลว และไมมความสมพนธแบบ Transitive เกดขน

Page 31: Design Database : Sale System

31

Data Dictionary

การทำา Data Dictionary คอ การกำาหนดรายละเอยดใหกบ Relation ดงน

Category (หมวดหมหนงสอ) ลำาด

บแอทรบ

วตความหมาย ชนด ขนา

ดคย หมายเหต

1 C_ID รหสหมวด tinyint

1 PK

Auto_Number

2 C_Na ชอหมวด varchar

50

Page 32: Design Database : Sale System

32

Data Dictionary

Partner (บรษทคคา)

ลำาดบ

แอทรบวต

ความหมาย ชนด ขนาด

คย หมายเหต

1 P_ID รหสบรษท tinyint

1 PK Auto_Number

2 P_Na ชอบรษท varchar

50

3 P_Add ทอย varchar

50

4 P_Tel เบอรโทร varchar

15

5 P_Fax แฟกซ varchar

15

6 P_Contact

ชอ-สกลผตดตอ

varchar

30

7 P_Email

อเมล varchar

30

Page 33: Design Database : Sale System

33

Data Dictionary

ลำาดบ

แอทรบวต ความหมาย ชนด ขนาด

คย หมายเหต

1 B_ID รหสหนงสอ varchar

10

PK

Auto_number

2 B_Na ชอเรอง varchar

100

3 B_Author ผแตง varchar

100

4 B_Pub สำานกพมพ varchar

100

5 B_ISBN หมายเลขISBN varchar

20

6 B_img รป varchar

50

7 B_Cost ราคาทน decimal

6,2

8 B_Price ราคาขาย decimal

6,2

9 B_amount

จำานวนคงเหลอ int 4

10

B_point จดสงซอ smallint

2

11

B_Comment

เรองยอ text

12

C_ID รหสหมวด tinyint

1 FK

Category

13

P_ID รหสบรษท tinyint

1 FK

Partner

book (หนงสอ)

Page 34: Design Database : Sale System

34

Data Dictionary

member (สมาชก)

ลำาดบ

แอทรบวต

ความหมาย ชนด ขนาด

คย หมายเหต

1 M_Id รหสสมาชก int 4 pk auto_number

2 M_Na ชอ-สกลสมาชก varchar

50

3 M_Add ทอย varchar

50

4 M_Tel เบอรโทรศพท varchar

15

5 M_Mail อเมล varchar

20

Page 35: Design Database : Sale System

35

Data Dictionary

Sale_Orders (รายการขายหนงสอ)

ลำาดบ

แอทรบวต

ความหมาย ชนด ขนาด

คย

หมายเหต

1 SO_Id เลขทรายการขาย

int 4 PK

auto_number

2 SO_Date

วนท varchar

10

3 SO_SNet

ยอดเงนรวมสทธ

decimal

7 ,2

4 SO_IdSlip

เลขทใบเสรจ int 4

5 M_Id รหสสมาชก int 4 FK

Member

Page 36: Design Database : Sale System

36

Data Dictionary

Orders_Detail (รายละเอยดใบรายการซอสนคา) ลำา

ดบแอทรบ

วตความหมาย ชนด ขนา

ดคย หมายเหต

1 SO_Id เลขทรายการขาย

int 4 PK,FK

Sale_Orders

2 B_ID รหสหนงสอ varchar

10

PK ,FK

Book

3 OD_num

จำานวนทขาย tinyint

1

Page 37: Design Database : Sale System

37

Data Dictionary

Purchase_Orders (รายการสงซอหนงสอกบบรษทคคา)

ลำาดบ

แอทรบวต

ความหมาย ชนด ขนาด

คย

หมายเหต

1 PO_Id เลขทรายการขาย

int 4 PK

auto_number

2 P O_Date

วนท varchar

10

3 P O_SNet

ยอดเงนรวมสทธ

decimal

8,2

4 PO_Status

สถานะการรบหนงสอ

int 4 0 = ยงไมไดรบ

1 = รบเรยบรอยแลว

5 B_ID รหสหนงสอ varchar

10

Book

Page 38: Design Database : Sale System

38

Data Dictionary

Purchase_Detail (รายละเอยดรายการสงซอหนงสอ) ลำา

ดบแอทรบ

วตความหมาย ชนด ขนา

ดคย หมายเหต

1 PD_Id เลขทรายการขาย

int 4 PK,FK

Purchase_Orders

2 B_ID รหสหนงสอ varchar

10

PK ,FK

Book

3 PD _num

จำานวนทซอ int 4

Page 39: Design Database : Sale System

39

db_bookshop : SQLServer

create database db_bookshopon primary(name = db_bookshop_Data,filename = 'C:\Program Files\Microsoft SQL

Server\MSSQL\Data\db_bookshop.mdf',size = 1 mb,maxsize = 20 mb,Filegrowth = 10%)log on (name=db_bookshop_log,Filename = 'C:\Program Files\Microsoft SQL

Server\MSSQL\Data\db_bookshop.ldf',size = 1 mb,maxsize = 10 mb,filegrowth = 10%)

Page 40: Design Database : Sale System

40

Table Category : SQLServer

create table Category(C_ID tinyint(1)primary key,C_Na varchar(50))

Page 41: Design Database : Sale System

41

Table Partner : SQLServer

Page 42: Design Database : Sale System

42

Table Book : SQLServer

Page 43: Design Database : Sale System

43

Table Member : SQLServer

Page 44: Design Database : Sale System

44

Table Sale_Orders : SQLServer

Page 45: Design Database : Sale System

45

Table Orders_Detail : SQLServer

Page 46: Design Database : Sale System

46

Table Purchase_Orders : SQLServer

Page 47: Design Database : Sale System

47

Table Purchase_Detail : SQLServer

Page 48: Design Database : Sale System

Diagram db_bookshop

Page 49: Design Database : Sale System

Company LOGO