ดาวน์โหลดงานนำเสนอ
งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ
1
Entity – Relationship Model
E-R Model
2
ขั้นตอนในการออกแบบฐานข้อมูล
ออกแบบฐานข้อมูลในระดับแนวคิด(Conceptual Database Design) การออกแบบฐานข้อมูลในระดับตรรกะ(Logical Database Design) การออกแบบฐานข้อมูลในระดับกายภาพ(Physical Database Design)
3
การออกแบบฐานข้อมูลในระดับแนวคิด
เป็นขั้นตอนในการวิเคราะห์ข้อมูลที่จำเป็นทั้งหมดที่เกี่ยวข้องกับระบบสารสนเทศ โดยกำหนดกลุ่มข้อมูล(Entity)และกำหนดความสัมพันธ์(Relationship)ระหว่างข้อมูลต่าง ๆ จากนั้นจึงระบุรายละเอียด(Attribute)ต่าง ๆ ของข้อมูลทั้งหมด และระบุกฏที่จะควบคุมความคงสภาพของข้อมูล(Data Integrity) แสดงแนวคิดการออกแบบโดยใช้ ER Model แล้วพัฒนา ER Diagram
4
ผู้แต่ง หนังสือ สำนักพิมพ์ การสั่งซื้อ ลูกค้า
ครั้งที่พิมพ์ รูปภาพ ปีที่พิมพ์ ชื่อผู้แต่ง ชื่อหนังสือ รหัสประเภทหนังสือ ชื่อประเภท อีเมลล์ รหัสผู้แต่ง ราคา รหัสISBN ผู้แต่ง M แต่ง N หนังสือ N จัดแบ่งเป็น 1 ประเภทหนังสือ N N ชื่อเข้าระบบ เว็บไซต์ จำนวน จัดพิมพ์ มีรายการ โทรศัพท์ รหัสสำนักพิมพ์ รหัสผ่าน ชื่อ 1 ราคารวม M สำนักพิมพ์ การสั่งซื้อ N ใช้งาน 1 ลูกค้า วันทั่งซื้อ วันทั่งส่งสินค้า รหัสลูกค้า ที่อยู่ โทรศัพท์ ยอดรวม อีเมลล์ อีเมลล์ รหัสการสั่งซื้อ ที่อยู่ ชื่อสำนักพิมพ์ บ้านเลขที่ ภาษีมูลค่าเพิ่ม รหัสไปรษณีย์ ถนน ตำบล อำเภอ จังหวัด
5
การออกแบบฐานข้อมูลในระดับตรรกะ
เป็นการแปลง ER Diagram ให้เป็นเค้าร่างรีเลชัน(Relational schema) ตามทฤษฎีฐานข้อมูลเชิงสัมพันธ์ นำรีเลชันมาปรับบรรทัดฐาน(Normalization) ให้อยู่ในรูปแบบบรรทัดฐานที่เหมาะสม
6
Relational Schema จาก ER Diagram แปลงเป็นเค้าร่างฐานข้อมูลได้ดังนี้
ประเภทหนังสือ(รหัสประเภท , ชื่อปรเภท) หนังสือ(รหัสISBN , ชื่อหนังสือ , ราคา , ปีที่พิมพ์ , ครั้งที่พิมพ์ , รูปภาพ , รหัสประเภท , รหัสสำนักพิมพ์ ) สำนักพิมพ์(รหัสสำนักพิมพ์ , ชื่อสำนักพิมพ์ , ที่อยู่ , โทรศัพท์ , เว็บไซต์ , อีเมลล์) ผู้แต่ง(รหัสผู้แต่ง , ชื่อผู้แต่ง , อีเมลล์ ) ลูกค้า(รหัสลูกค้า , ชื่อลูกค้า , โทรศัพท์ , อีเมลล์ , ชื่อเข้าใช้ระบบ , รหัสผ่าน , บ้านเลขที่ , ถนน , ตำบล , อำเภอ , จังหวัด , รหัสไปรษณีย์ ) การสั่งซื้อ(รหัสการสั่งซื้อ , วันที่สั่งซื้อ , วันที่ส่งสินค้า , รหัสลูกค้า ) การแต่งหนังสือ(รหัสISBN , รหัสผู้แต่ง) รายการสั่งซื้อ(รหัสการสั่งซื้อ , รหัส ISBN , จำนวน , ราคารวม)
7
Relational Schema
8
การออกแบบฐานข้อมูลในระดับกายภาพ
เป็นการออกแบบโครงสร้างข้อมูลที่จะนำไปจัดเก็บในฐานข้อมูล โดยกำหนดโครงสร้างตามคุณสมบัติข้อมูลของระบบจัดการฐานข้อมูลที่จะใช้ในการจัดการข้อมูล ระบุพจนานุกรมของข้อมูล(Data Dictionary)
9
พจนานุกรมข้อมูล(Data Dictionary)
Table name Attribute name Description Data Type Size Key References BookType (ประเภทหนังสือ) BTypeID รหัสประเภท Char 5 PK BTypeName ชื่อประเภท Varchar 30 Book (หนังสือ) ISBN รหัสISBN 15 BName ชื่อหนังสือ 50 Price ราคา Float Edition ครั้งที่พิมพ์ Int Published ปีที่พิมพ์ Picture รูปภาพ Blob FK
10
E-R Model เป็นแบบจำลองที่ใช้แสดงแนวคิดการออกแบบฐานข้อมูลในระดับแนวคิด(Conceptual schema) โดยจะแสดงความสัมพันธ์ระหว่างข้อมูลที่ประกอบด้วย เอนทิตี้ , แอททริบิวต์ และความสัมพันธ์ คิดค้นโดย Peter Chen ในปี 1976 เป็นอิสระจากระบบการจัดการฐานข้อมูล(DBMS) นักวิเคราะห์และออกแบบระบบจะใช้ ERM เป็นสื่อกลางในการสื่อสารระหว่างผู้ใช้และผู้พัฒนาโปรแกรม
11
E-R Model E-R Model เป็นการออกแบบฐานข้อมูลในระดับแนวคิดในลักษณะจากบนลงล่าง (Top-Down Strategy) ผลจากการออกแบบฐานข้อมูลจะได้เค้าร่างในระดับแนวคิดที่ประกอบด้วย เอนทิตี้ที่ควรจะมีในระบบ ความสัมพันธ์ระหว่างเอนทิตี้ว่าเป็นอย่างไร แอททริบิวต์ซึ่งเป็นรายละเอียดที่อธิบายเอนทิตี้ และมีความสัมพันธ์กันอย่างไร
12
องค์ประกอบของ ER Model
เอนทิตี้(Entity) แอททริบิวต์(Attribute) ความสัมพันธ์(Relationship)
13
Entity หมายถึง กลุ่มของสิ่งต่างๆ ที่ต้องการจัดเก็บข้อมูลไว้ในฐานข้อมูล
สิ่งมีชีวิต เช่น พนักงาน , ลูกค้า , นักศึกษา , อาจารย์ , สมาชิก , สุนัข , พืช , สัตว์ ฯลฯ สถานที่ เช่น อาคาร , สาขา , ห้องเรียน , หน่วยงาน ฯลฯ วัตถุ เช่น หนังสือ , เครื่องยนต์ , สินค้า , อุปกรณ์ ฯลฯ เหตุการณ์ เช่น การเช่า , การสั่งซื้อ , การลงทะเบียน ฯลฯ แนวคิด เช่น บัญชี , วิชาเรียน , หลักสูตร ฯลฯ
14
ประเภทของ Entity แบ่งออกเป็น 2 ประเภท คือ
เอนทิตี้แบบปกติ(Regular Entity หรือ Strong Entity) เอนทิตี้แบบอ่อน (Weak Entity)
15
เอนทิตี้แบบปกติ เป็นเอนทิตี้ที่เราสามารถกำหนดให้มีในระบบได้อย่างอิสระ ไม่ขึ้นกับข้อมูลจากเอนทิตี้อื่น เช่น นักศึกษา , พนักงาน , รถ และ วิชาเรียน เป็นต้น ข้อมูลในเอนทิตี้แบบปกติมีลักษณะเป็นเอกลักษณ์(Unique) นั่นคือ สามารถเลือกข้อมูลบางแอททริบิวต์ที่อยู่ในเอนทิตี้นั้นๆ มาเป็นกุญแจหลัก(Primary Key) ของเอนทิตี้นั้น เพื่อจำแนกข้อมูลแต่ละรายการได้
16
เอนทิตี้แบบปกติ Entity Name STUDENT PRODUCT
สัญลักษณ์ที่ใช้แทน เอนทิตี้แบบปกติ Entity Name STUDENT PRODUCT
17
เอนทิตี้แบบอ่อน เอนทิตี้แบบอ่อนเป็นเอนทิตี้ขึ้นต่อข้อมูลในเอนทิตี้อื่น ๆ บางเอนทิตี้ กล่าวคือ เอนทิตี้แบบอ่อนจะไม่มีข้อมูลในฐานข้อมูล หากไม่มีข้อมูลในอีกเอนทิตี้หนึ่ง (เรียกว่า Owner Entity) เกิดขึ้นในระบบก่อน เรียกว่า “การขึ้นต่อกันเชิงปรากฏ (Existence Dependency)” เอนทิตี้แบบอ่อนจะไม่สามารถกำหนดคีย์หลักโดยใช้แอททริบิวต์ในเอนทิตี้เพียงลำพัง แต่ต้องอาศัยคีย์หลักจาก Owner Entity มาประกอบกันกับแอททริบิวต์ที่เป็นส่วนประกอบของคีย์
18
เอนทิตี้แบบอ่อน สัญลักษณ์ที่ใช้แทน เอนทิตี้แบบอ่อน Entity Name
ORDER_DETAIL DEPENDENT
19
ตัวอย่างเอนทิตี้ พนักงาน ผู้รับผลประโยชน์ 1 N มีความสัมพันธ์
รหัส ชื่อ นามสกุล ที่อยู่ S1 วนิดา สุขสันต์ S2 สมชาย รักดี S3 จริงใจ รักชีพ S4 สถาพร ช่วงโชติ S5 จิราพร แก้วมณี อุดรธานี กรุงเทพฯ เชียงใหม่ ภูเก็ต S6 ลินดา ใจอ่อน S7 จิระศักดิ์ ปานพุ่ม ระยอง ชื่อ นามสกุล ความสัมพันธ์ สุดาวัลย์ สุขสันต์ วิภา รักดี จันจิรา รักชีพ สมชาย สุขสม บุตรสาว ภรรยา บิดา แก้วมณี สามี นิโคล ปานพุ่ม
20
Attribute แอททริบิวต์ หมายถึง คุณสมบัติ หรือ คุณลักษณะ ที่ใช้อธิบายรายละเอียดของเอนทิตี้ และ ความสัมพันธ์ ตัวอย่าง เอนทีตี้ “นักศึกษา” ประกอบด้วยข้อมูล “รหัสนักศึกษา , ชื่อ ,นามสกุล , ที่อยู่ , วันเกิด , อายุ , เกรดเฉลี่ยสะสม” ตัวอย่าง เอนทีตี้ “สินค้า” ประกอบด้วยข้อมูล “รหัสสินค้า , ชื่อสินค้า , ราคาต่อหน่วย , จำนวนคงเหลือ”
21
ประเภท Attribute Simple Attribute หรือ Atomic Attribute
Composite Attribute Single-value Attribute Multivalued Attribute Derived Attribute
22
Atomic/Simple Attribute
หมายถึง แอททริบิวต์ที่ไม่มีการแยกออกเป็นแอททริบิวต์ย่อยๆ อีก เช่น รหัสนักศึกษา , เงินเดือน , เกรดเป็นต้น รหัสนักศึกษา Attribute Name เงินเดือน
23
Composite Attribute หมายถึง แอททริบิวต์ที่สามารถแยกออกเป็นแอททริบิวต์ย่อยออกไปอีก เช่น ที่อยู่ ประกอบด้วย บ้านเลขที่ , ถนน , ตำบล , อำเภอ , จังหวัด , รหัสไปรษณีย์ ที่อยู่ บ้านเลขที่ ถนน ตำบล อำเภอ จังหวัด รหัสไปรษณีย์ Attr. name Attribute Name
24
Single value Attribute
หมายถึง แอททริบิวต์ที่มีค่าข้อมูลได้เพียงค่าเดียวในแต่ละ แอททริบิวต์ สำหรับแต่ละรายการข้อมูล ถ้ากำหนดให้เป็นกุญแจหลัก(Primary key) ให้ขีดเส้นใต้ทึบที่ใต้ชื่อแอททริบิวต์ Primary key Attribute Attribute Name ชื่อ รหัสนักศึกษา
25
Multivalued Attribute
หมายถึง แอททริบิวต์ที่สามารถกำหนดค่าข้อมูลได้มากกว่า 1 ค่า สำหรับข้อมูลแต่ละรายการ เช่น พนักงานแต่ละคนสามารถมีความสามารถพิเศษได้หลายอย่าง พิมพ์ดีด ขับรถยนต์ พิมพ์ดีด ภาษาจีน คอมพิวเตอร์ สมชาย วันดี <ชื่อ Attr.> ความสามารถพิเศษ
26
Derived Attribute หมายถึง แอททริบิวต์ที่ค่าของแอททริบิวต์ประกอบขึ้นหรือคำนวณค่าจากค่าของแอททริบิวต์อื่น เช่น อายุ คำนวณจาก วันเกิด วันเกิด Attribute Name อายุ นักศึกษา
27
Entity & Attribute นักศึกษา ที่อยู่ นามสกุล วันเกิด ชื่อ อายุ โทรศัพท์
รหัสนักศึกษา ชื่อ นามสกุล ที่อยู่ บ้านเลขที่ ถนน ตำบล อำเภอ จังหวัด รหัสไปรษณีย์ วันเกิด อายุ โทรศัพท์
28
STUDENT Student_ID : 63812489101 Student_Name : วันดี ใจสะอาด
Address : 45/2 ถ.อุดรดุษฎี ต.หมากแข้ง อ.เมือง จ.อุดรธานี 41000 Phone : Major : เคมี Student_Name Phone Student_ID Address Major STUDENT CREATE TABLE STUDENT ( Student_ID CHAR(11) NOT NULL UNIQUE, Student_Name VARCHAR(50) , Address VARCHAR(100), Phone VARCHAR(10) , Major VARCHAR(20) , PRIMARY KEY(Student_ID) ) ; Student_ID : Student_Name : สมศักดิ์ ใจดี Address : 50 ถ.ทหาร ต.หมากแข้ง อ.เมือง จ.อุดรธานี 41000 Phone : Major : คอมพิวเตอร์
29
Relationship ความสัมพันธ์ หมายถึง ความสัมพันธ์ที่เชื่อมโยงระหว่างแต่ละเอนทิตี้ ตามเงื่อนไขของระบบงาน เช่นเอนทิตี้ “อาจารย์” และเอนทิตี้ “นักศึกษา” มีความสัมพันธ์กันชื่อ “เป็นที่ปรึกษา”
30
Relationship สัญลักษณ์แทน ความสัมพันธ์
Relationship Name แสดงความสัมพันธ์ระหว่างเอนทิตี้ที่มีความสัมพันธ์กันแบบปกติ แสดงความสัมพันธ์ระหว่างเอนทิตี้แบบอ่อนกับเอนทิตี้อื่น (Owner Entity) ที่มีความสัมพันธ์กันแบบเชิงปรากฏและเชิงระบุ เรียกความสัมพันธ์นี้ว่า Identifying Relationship Relationship Name
31
Relationship R1 A B R2 B C R3 A C R4 C D
32
Degree of Relationship
หมายถึง จำนวนของเอนทิตี้ในการมีส่วนร่วม(Participating)กับความสัมพันธ์ใด ๆ มีความเป็นไปได้ 4 แบบ ดังนี้ Unary Degree Binary Degree Ternary Quaternary
33
Degree of Relationship : Unary Relationship
เป็นความสัมพันธ์เกิดขึ้นกับเอนทิตี้ 1เอนทิตี้ โดยสมาชิกในเอนทิตี้มีความสัมพันธ์ระหว่างกันเอง (recursive) R1 A แต่งงาน บุคลากร สามี ภรรยา บังคับเรียนก่อน วิชาเรียน วิชาบังคับ
34
Degree of Relationship : Binary Relationship
เป็นความสัมพันธ์ระหว่างสองเอนทิตี้ R1 A B เป็นที่ปรึกษา อาจารย์ นักศึกษา สอน อาจารย์ นักศึกษา
35
Degree of Relationship : Binary Relationship
สังกัด นักศึกษา คณะวิชา ลงทะเบียน นักศึกษา วิชาเรียน
36
Degree of Relationship : Ternary Relationship
เป็นความสัมพันธ์ระหว่างเอนทิตี้ 3 เอนทิตี้ R1 A B C
37
Degree of Relationship : Ternary Relationship
กำหนดให้ พนักงาน ทักษะ โครงการ
38
Degree of Relationship : Ternary Relationship
Ternary Degree ใช้ อุปกรณ์ ผู้ผลิต โครงการ
39
Cardinality Constraints
หมายถึง การระบุจำนวนสมาชิกของเอนทิตี้ที่มาสัมพันธ์กันในแต่ละความสัมพันธ์ ประกอบด้วย ความสัมพันธ์แบบ หนึ่งต่อหนึ่ง(One-to-One Relationship) ความสัมพันธ์แบบ หนึ่งต่อกลุ่ม(One-to-Many Relationship) ความสัมพันธ์แบบ กลุ่มต่อกลุ่ม(Many-to-Many Relationship)
40
1 : 1 Relationship เป็นการแสดงความสัมพันธ์ระหว่างข้อมูลของเอนทิตี้หนึ่งกับข้อมูลของอีกเอนทิตี้หนึ่งเพียง 1 รายการเท่านั้น ตัวอย่างเช่น อาจารย์ 1 คน เป็นคณบดีได้ 1 คณะ ในขณะที่ คณะวิชาแต่ละคณะมีคณบดี ได้ 1 คน/คณะ พนักงาน 1 คนมีที่จอดรถเพียง 1 ที่ และที่จอดรถแต่ละที่สามารถจอดรถโดยพนักงาน 1 คนเท่านั้น พนักงาน 1 คนเป็นผู้จัดการแผนกได้ 1 แผนกและแต่ละแผนกก็มีผู้จัดการได้เพียง 1 คน
41
1 : 1 Relationship สัญลักษณ์แบบ Chen สัญลักษณ์แบบ Crow’s Foot 1 1 A R1
B สัญลักษณ์แบบ Crow’s Foot A R1 B
42
1 : 1 Relationship อาจารย์ คณะวิชา ชื่อ นามสกุล รหัสคณะ ชื่อคณะ
รหัสอาจารย์ 1 1 1 อาจารย์ เป็นคณบดี คณะวิชา รหัส ชื่อ นามสกุล รหัส ชื่อคณะ T1 เรวดี พิพัฒน์สูงเนิน F1 วิทยาศาสตร์ T2 คุณาวุฒิ บุญกว้าง F2 บริหารธุรกิจ T3 นิพล สังสุทธิ F3 วิศวกรรมศาสตร์ T4 อารีรัตน์ วุฒิเสน F4 ศิลปกรรมศาสตร์ T5 ปัจจัย พวงสุวรรณ F5 เกษตรศาสตร์ อาจารย์ คณะวิชา
43
1 : 1 Relationship บุคลากร แต่งงาน 1 สมชาย สมศรี สมจิต 1 สมใจ สมหวัง
สมศักดิ์
44
1 : N Relationship เป็นการแสดงความสัมพันธ์ของข้อมูลเอนทิตี้หนึ่งว่ามีความสัมพันธ์กับข้อมูลของอีกเอนทิตี้หนึ่งมากกว่า 1 รายการ ตัวอย่างเช่น อาจารย์ 1 คน เป็นอาจารย์ที่ปรึกษาให้กับนักศึกษาได้หลายคน ในขณะที่นักศึกษาแต่ละคนมีอาจารย์ที่ปรึกษาเพียง 1 คน แผนก 1 แผนกมีพนักงานสังกัดได้หลายคน ในขณะที่พนักงานแต่ละคนสามารถสังกัดแผนกได้เพียง 1 แผนก
45
1 : N Relationship สัญลักษณ์แบบ Chen สัญลักษณ์แบบ Crow’s Foot 1 N A R1
B สัญลักษณ์แบบ Crow’s Foot A R1 B
46
1 : N Relationship อาจารย์ นักศึกษา อาจารย์ นักศึกษา ชื่อ นามสกุล ชื่อ
โปรแกรมวิชา รหัสอาจารย์ รหัสนักศึกษา นามสกุล 1 1 N อาจารย์ เป็นที่ปรึกษา นักศึกษา รหัส ชื่อ นามสกุล รหัส ชื่อ นามสกุล โปรแกรมวิชา T1 เรวดี ทองอ่อน s1 วนิดา สุขสันต์ คอมพิวเตอร์ T2 พนารัตน์ ศรีเชษฐา s2 สมชาย รักดี โยธา T3 นิพล สังสุทธิ s3 จริงใจ รักชีพ คอมพิวเตอร์ T4 อารีรัตน์ บุญทอง s4 สถาพร ช่วงโชติ สัตวบาล T5 ปัจจัย พวงสุวรรณ s5 จิราพร แก้วมณี โยธา S6 ลินดา ใจอ่อน โยธา อาจารย์ S7 ชาติชาย ปานพุ่ม คอมพิวเตอร์ นักศึกษา
47
1 : N Relationship คณะวิชา นักศึกษา นักศึกษา สังกัด คณะวิชา ชื่อ
นามสกุล รหัสคณะ ชื่อคณะ รหัสนักศึกษา โปรแกรมวิชา N 1 นักศึกษา สังกัด คณะวิชา รหัส ชื่อ นามสกุล โปรแกรมวิชา รหัส ชื่อคณะ s1 วนิดา สุขสันต์ คอมพิวเตอร์ F1 วิทยาศาสตร์ s2 สมชาย รักดี โยธา F2 บริหารธุรกิจ s3 จริงใจ รักชีพ คอมพิวเตอร์ F3 วิศวกรรมศาสตร์ s4 สถาพร ช่วงโชติ สัตวบาล F4 ศิลปกรรมศาสตร์ s5 จิราพร แก้วมณี โยธา F5 เกษตรศาสตร์ S6 ลินดา ใจอ่อน โยธา คณะวิชา S7 ชาติชาย ปานพุ่ม คอมพิวเตอร์ นักศึกษา
48
M : N Relationship เป็นการแสดงความสัมพันธ์ของข้อมูลระหว่างเอนทิตี้แบบกลุ่มต่อกลุ่ม ตัวอย่างเช่น นักศึกษา 1 คนสามารถลงทะเบียนเรียนได้หลายวิชา ในขณะที่แต่ละวิชาก็สามารถมีนักศึกษามาลงทะเบียนเรียนได้หลายคน
49
M : N Relationship สัญลักษณ์แบบ Chen สัญลักษณ์แบบ Crow’s Foot M N A R1
B สัญลักษณ์แบบ Crow’s Foot A R1 B
50
M : N Relationship วิชาเรียน นักศึกษา นักศึกษา ลงทะเบียน วิชาเรียน
ชื่อ นามสกุล รหัสวิชา ชื่อวิชา รหัสนักศึกษา โปรแกรมวิชา หน่วยกิต M N นักศึกษา ลงทะเบียน วิชาเรียน รหัส ชื่อ นามสกุล โปรแกรมวิชา รหัส ชื่อวิชา หน่วยกิต s1 วนิดา สุขสันต์ คอมพิวเตอร์ Su1 ฐานข้อมูล 3 s2 สมชาย รักดี โยธา Su2 สื่อสารข้อมูล 3 s3 จริงใจ รักชีพ คอมพิวเตอร์ Su3 แคลคูลัส 3 s4 สถาพร ช่วงโชติ สัตวบาล Su4 บัญชี1 3 s5 จิราพร แก้วมณี โยธา Su5 อังกฤษ1 2 S6 ลินดา ใจอ่อน โยธา วิชาเรียน S7 ชาติชาย ปานพุ่ม คอมพิวเตอร์ นักศึกษา
51
M : N Relationship วิชาเรียน การเขียนโปรแกรม 1 M ฐานข้อมูลเบื้องต้น
บังคับเรียนก่อน วิชาเรียน ระบบการจัดการฐานข้อมูล N เครือข่ายคอมพิวเตอร์ การวิเคราะห์และออกแบบระบบ เครือข่ายไร้สาย
52
Participation Constraints
หมายถึง ข้อกำหนดในการมีส่วนรวมในความสัมพันธ์ของสมาชิกในเอนทิตี้ ประกอบด้วย 2 ข้อกำหนด คือ การมีส่วนร่วมแบบทั้งหมด(Total Participation หรือ Mandatory) การมีส่วนร่วมแบบบางส่วน(Partial Participation หรือ Optional)
53
Total Participation หมายถึง ทุกรายการในเอนทิตี้ A ต้องมีความสัมพันธ์แบบ R1 กับสมาชิกเอนทิตี้ B เสมอ 1 N A R1 B A R1 B
54
Total Participation นักศึกษาทุกคนต้องสังกัดคณะวิชาได้คนละ 1 คณะ
และแต่ละคณะต้องมีนักศึกษามาสังกัดอย่างน้อย 1 คนหรือหลายคน ชื่อ นามสกุล รหัสคณะ ชื่อคณะ รหัสนักศึกษา โปรแกรมวิชา N 1 นักศึกษา สังกัด คณะวิชา รหัส ชื่อ นามสกุล โปรแกรมวิชา รหัส ชื่อคณะ s1 วนิดา สุขสันต์ คอมพิวเตอร์ F1 วิทยาศาสตร์ s2 สมชาย รักดี โยธา F2 บริหารธุรกิจ s3 จริงใจ รักชีพ คอมพิวเตอร์ F3 วิศวกรรมศาสตร์ s4 สถาพร ช่วงโชติ สัตวบาล F4 ศิลปกรรมศาสตร์ s5 จิราพร แก้วมณี โยธา F5 เกษตรศาสตร์ S6 ลินดา ใจอ่อน โยธา คณะวิชา S7 ชาติชาย ปานพุ่ม คอมพิวเตอร์ นักศึกษา
55
Partial Participation
หมายถึง รายการในเอนทิตี้ A อาจจะมีความสัมพันธ์แบบ R1 กับสมาชิกเอนทิตี้ B หรือไม่ก็ได้ 1 N A R1 B A R1 B
56
Partial Participation
นักศึกษา(บางคน) สามารถลงทะเบียนเรียนหรือไม่ลงทะเบียนก็ได้ และสามารถลงทะเบียนเรียนได้หลายวิชา แต่ละวิชาก็อนุญาตให้ลงทะเบียนได้มากกว่า 1 คน ชื่อ นามสกุล รหัสวิชา ชื่อวิชา รหัสนักศึกษา โปรแกรมวิชา หน่วยกิต M N นักศึกษา ลงทะเบียน วิชาเรียน รหัส ชื่อ นามสกุล โปรแกรมวิชา รหัส ชื่อวิชา หน่วยกิต s1 วนิดา สุขสันต์ คอมพิวเตอร์ Su1 ฐานข้อมูล 3 s2 สมชาย รักดี โยธา Su2 สื่อสารข้อมูล 3 s3 จริงใจ รักชีพ คอมพิวเตอร์ Su3 แคลคูลัส 3 s4 สถาพร ช่วงโชติ สัตวบาล Su4 บัญชี1 3 s5 จิราพร แก้วมณี โยธา Su5 อังกฤษ1 2 S6 ลินดา ใจอ่อน โยธา วิชาเรียน S7 ชาติชาย ปานพุ่ม คอมพิวเตอร์ นักศึกษา
57
Participation อาจารย์(บางคน) เป็นที่ปรึกษาให้แก่นักศึกษาได้หลายคน แต่ในขณะที่นักศึกษาทุกคนต้องมีอาจารย์ที่ปรึกษา 1 คน ชื่อ นามสกุล ชื่อ โปรแกรมวิชา รหัสอาจารย์ รหัสนักศึกษา นามสกุล 1 1 N อาจารย์ เป็นที่ปรึกษา นักศึกษา รหัส ชื่อ นามสกุล รหัส ชื่อ นามสกุล โปรแกรมวิชา T1 เรวดี ทองอ่อน s1 วนิดา สุขสันต์ คอมพิวเตอร์ T2 พนารัตน์ ศรีเชษฐา s2 สมชาย รักดี โยธา T3 นิพล สังสุทธิ s3 จริงใจ รักชีพ คอมพิวเตอร์ T4 อารีรัตน์ บุญทอง s4 สถาพร ช่วงโชติ สัตวบาล T5 ปัจจัย พวงสุวรรณ s5 จิราพร แก้วมณี โยธา S6 ลินดา ใจอ่อน โยธา อาจารย์ S7 ชาติชาย ปานพุ่ม คอมพิวเตอร์ นักศึกษา
58
ความสัมพันธ์เชิงระบุ(Identifying Relationship)
1 R1 N E2 N N R5 1 R2 E6 1 N R3 1 E3 E4 N R4 1 E5
59
สัญลักษณ์ E-R Model ชื่อเอนทิตี้ ชื่อเอนทิตี้ E-R Model แบบ Chen
เอนทิตี้แบบปกติ ชื่อเอนทิตี้ เอนทิตี้แบบอ่อน
60
สัญลักษณ์ E-R Model E-R Model แบบ Chen ความสัมพันธ์แบบปกติ
ความสัมพันธ์แบบ Existence Dependency
61
สัญลักษณ์ E-R Model E-R Model แบบ Chen
แอททริบิวต์แบบ atomic attribute , single-valued attribute แอททริบิวต์แบบ multi-valued attribute แอททริบิวต์แบบ composite attribute แอททริบิวต์แบบ Derive attribute
62
สัญลักษณ์ E-R Model E-R Model แบบ Chen
ความสัมพันธ์ของข้อมูลระหว่าง E1 กับ E2 แบบ 1:1 แบบ Partial Participation E1 E2 1 ความสัมพันธ์ของข้อมูลระหว่าง E1 กับ E2 แบบ 1:N แบบ Partial Participation E1 E2 1 N ความสัมพันธ์ของข้อมูลระหว่าง E1 กับ E2 แบบ M:N โดย E1 เป็นแบบ Partial Participation และ E2 เป็นแบบ Total Participation E1 E2 M N
63
สัญลักษณ์ E-R Model E-R Model แบบ Chen
Generalization หรือ Specialization หากสัญลักษณ์ในวงกลมเป็น d หมายถึง disjoint แต่ถ้าสัญลักษณ์ในวงกลมเป็น o หมายถึง Nondisjoint เส้นที่ลากจาก Superclass มายังวงกลม ถ้าเป็นเส้นคู่ หมายถึง Total Participation แต่ถ้าเป็น เส้นเดี่ยว หมายถึง Partial Participation Superclass d Subclass Subclass
64
สัญลักษณ์ E-R Model ชื่อเอนทิตี้ E-R Model แบบ Crow’s Foot
เอนทิตี้แบบปกติ ชื่อความสัมพันธ์ ความสัมพันธ์ระหว่างเอนทิตี้ปกติ ชื่อความสัมพันธ์ ความสัมพันธ์ระหว่างเอนทิตี้ปกติกับแบบอ่อน หรือแบบอ่อนกับแบบอ่อน
65
สัญลักษณ์ E-R Model E-R Model แบบ Crow’s Foot ชื่อเอนทิตี้
เอนทิตี้ปกติและแอททริบิวต์ แอททริบิวต์จะแสดงข้างใต้ชื่อเอนทิตี้ โดยแอททริบิวต์ที่เป็นคีย์หลักจะขีดเส้นใต้ที่ใต้ชื่อแอททริบิวต์ แอททริบิวต์ 1 แอททริบิวต์ 2 แอททริบิวต์ 3
66
สัญลักษณ์ E-R Model E-R Model แบบ Crow’s Foot ชื่อเอนทิตี้
เอนทิตี้แบบอ่อนและแอททริบิวต์ แอททริบิวต์จะแสดงข้างใต้ชื่อเอนทิตี้ โดยแอททริบิวต์ที่เป็นคีย์ร่วมของคีย์หลักจะขีดเส้นใต้ที่ใต้ชื่อแอททริบิวต์ แอททริบิวต์ 1 แอททริบิวต์ 2 แอททริบิวต์ 3
67
สัญลักษณ์ E-R Model E-R Model แบบ Crow’s Foot
ความสัมพันธ์แบบ Mandatory One ความสัมพันธ์แบบ Mandatory Many ความสัมพันธ์แบบ Optional One ความสัมพันธ์แบบ Optional Many
68
สัญลักษณ์ E-R Model E-R Model แบบ Crow’s Foot
ความสัมพันธ์ของข้อมูลระหว่าง E1 กับ E2 แบบ 1:1 แบบ Total Participation (Mandatory) ชื่อความสัมพันธ์ E1 E2 ความสัมพันธ์ของข้อมูลระหว่าง E1 กับ E2 แบบ 1:1 โดย E1 เป็นแบบ Partial Participation (Optional) และ E2 เป็นแบบ Total Participation (Mandatory) ชื่อความสัมพันธ์ E1 E2
69
สัญลักษณ์ E-R Model E-R Model แบบ Crow’s Foot
ความสัมพันธ์ของข้อมูลระหว่าง E1 กับ E2 แบบ 1:N โดย E1 เป็นแบบ Partial Participation (Optional) ส่วน E2 เป็นแบบ Total Participation (Mandatory) ชื่อความสัมพันธ์ E1 E2 ชื่อความสัมพันธ์ ความสัมพันธ์ของข้อมูลระหว่าง E1 กับ E2 แบบ M:N แบบ Partial Participation (Optional) E1 E2
70
สัญลักษณ์ E-R Model E-R Model แบบ Crow’s Foot
Superclass สี่เหลี่ยมใหญ่แสดง Superclass และสี่เหลี่ยมย่อยแสดง Subclass (Generalization / Specialization) Subclass Subclass
71
ตัวอย่าง ER แบบ Crow’s Foot
วิชาเรียนสามารถมีหมู่เรียนได้หลายหมู่เรียน(หรือไม่มีหมู่เรียนก็ได้) แต่ในขณะที่แต่ละหมู่เรียน(ทุกหมู่เรียน)จะเปิดสอนได้เพียง 1 รายวิชา วิชาเรียน รหัสวิชา ชื่อวิชา หน่วยกิต หมู่เรียน รหัสหมู่เรียน ห้องเรียน เวลาเรียน มี
72
เปรียบเทียบ E-R Model แผนก 1 แผนกอาจจะมีพนักงานทำงานอยู่หรือไม่ก็ได้ แต่พนักงานทุกคนต้องสังกัดแผนกเพียง 1 แผนกเท่านั้น N สังกัด 1 Chen พนักงาน แผนก สังกัด Crow’s Foot พนักงาน แผนก
73
เปรียบเทียบ E-R Model แผนก 1 แผนกอาจจะมีพนักงานทำงานอยู่หรือไม่ก็ได้ และพนักงานแต่ละคนจะสังกัดแผนกหรือไม่ก็ได้ แต่สังกัดได้ไม่เกิน 1 แผนก N สังกัด 1 Chen พนักงาน แผนก สังกัด Crow’s Foot พนักงาน แผนก
74
เปรียบเทียบ E-R Model แผนกแต่ละแผนกจะต้องมีพนักงานทำงานอยู่ และพนักงานทุกคนต้องสังกัดแผนกเพียง 1 แผนกเท่านั้น N สังกัด 1 พนักงาน แผนก Chen สังกัด Crow’s Foot พนักงาน แผนก
75
เปรียบเทียบ E-R Model แผนก 1 แผนกจะต้องมีพนักงานทำงานอยู่ แต่พนักงานแต่ละคนจะสังกัดแผนกหรือไม่ก็ได้ แต่สังกัดได้ไม่เกิน 1 แผนก N สังกัด 1 พนักงาน แผนก Chen สังกัด Crow’s Foot พนักงาน แผนก
76
ตัวอย่าง ER แบบ Crow’s Foot
ประเทศสามารถมีจังหวัด/รัฐ ได้หลายจังหวัด/รัฐ (หรือไม่มีก็ได้) แต่ในขณะที่แต่ละจังหวัด/รัฐ(ทุกจังหวัด/รัฐ)จะเกิดขึ้นได้ต้องมีข้อมูลประเทศเกิดขึ้นก่อน และ 1 จังหวัด/รัฐ จะอยู่ในประเทศได้แค่ 1 ประเทศเท่านั้น รหัสจังหวัด/รัฐ ชื่อจังหวัด/รัฐ ชื่อประเทศ จำนวนประชากร รหัสประเทศ 1 N มี ประเทศ จังหวัด/รัฐ ประเทศ รหัสประเทศ ชื่อประเทศ จำนวนประชากร จังหวัด/รัฐ รหัสจังหวัด/รัฐ ชื่อจังหวัด/รัฐ มี
77
ตัวอย่าง ER แบบ Crow’s Foot
นักศึกษาสามารถลงทะเบียนเรียนในหมู่เรียนได้คนละหลายหมู่เรียน(หรือไม่ลงทะเบียนเรียนในหมู่เรียนใดเลยก็ได้) และแต่ละหมู่เรียนก็สามารถมีนักศึกษามาลงทะเบียนเรียนได้หลายคน(หรือไม่มีนักศึกษามาลงทะเบียนเรียนเลยก็ได้) เกรด รหัสหมู่เรียน ห้องเรียน ชื่อชื่อ สาขาวิชา รหัสนักศึกษา เวลาเรียน ลงทะเบียน เรียนใน M N นักศึกษา หมู่เรียน นักศึกษา รหัสนักศึกษา ชื่อนักศึกษา สาขาวิชา หมู่เรียน รหัสหมู่เรียน ห้องเรียน เวลาเรียน ลงทะเบียนเรียนใน เกรด
78
ขั้นตอนการออกแบบฐานข้อมูลด้วย ER Model
79
ขั้นตอนในการพัฒนา ER Diagram
ขั้นที่ 1 ศึกษาหน้าที่ของระบบงาน (Business Function) ว่ามีรายละเอียดของการทำงานและข้อมูลที่เกี่ยวข้องอะไรบ้าง มีข้อสมมุติฐาน(Business Rule) ของงานต่างๆ อะไรบ้าง ขั้นที่ 2 กำหนดเอนทิตี้ที่ควรจะมีในระบบงานฐานข้อมูล ขั้นที่ 3 กำหนดความสัมพันธ์ระหว่างเอนทิตี้ และข้อกำหนดต่างๆ ขั้นที่ 4 กำหนดแอททริบิวต์ให้กับแต่ละเอนทิตี้ ขั้นที่ 5 ระบุคีย์หลักของแต่ละเอนติตี้ ขั้นที่ 6 นำองค์ประกอบในขั้นที่ 2 – 5 มาแทนด้วยสัญลักษณ์
80
กรณีศึกษาที่ 1
81
ขั้นที่ 1 ศึกษาข้อกำหนดของระบบงาน
บริษัทรับฝากขายบ้านแห่งหนึ่งต้องการจัดทำระบบฐานข้อมูลเพื่อจัดเก็บข้อมูลการดำเนินงานของบริษัท โดยมีรูปแบบการดำเนินงานดังนี้ บริษัทมีสำนักงานตั้งอยู่หลายแห่ง โดยในแต่ละแห่งมีตัวแทนนายหน้าทำงานประจำสำนักงานหลายคน ตัวแทนแต่ละคนจะเก็บรายการบ้านที่ต้องการฝากขายที่แต่ละคนได้รับการติดต่อให้ขาย ซึ่งบ้านที่มาฝากขายแต่ละแห่งจะถูกดูแลโดยตัวแทนคนใดคนหนึ่ง เจ้าของบ้านที่มาฝากขายแต่ละคนสามารถมาฝากขายบ้านกับบริษัทได้หลายหลัง
82
ขั้นที่ 1 ศึกษาข้อกำหนดของระบบงาน
ข้อมูลที่จำเป็นของสำนักงานที่จัดเก็บได้แก่ รหัสสำนักงาน , ชื่อผู้จัดการสำนัก , เบอร์โทรศัพท์ , เบอร์โทรสาร และที่อยู่ ข้อมูลที่จัดเก็บเกี่ยวกับตัวแทนได้แก่ รหัสตัวแทน , ชื่อ และเบอร์โทรศัพท์ ข้อมูลที่จัดเก็บเกี่ยวกับบ้านได้แก่ รหัสบ้าน , ที่ตั้ง(บ้านเลขที่ , ถนน,ตำบล,อำเภอ,จังหวัด,รหัสไปรษณีย์),จำนวนห้องนอน , จำนวนห้องน้ำ,พื้นที่ , คอมมิสชัน,ราคาขาย ข้อมูลที่จัดเก็บเกี่ยวกับเจ้าของบ้าน ได้แก่ รหัสประจำตัว,ชื่อ,นามสกุล,โทรศัพท์
83
ขั้นที่ 2 กำหนดเอนทิตี้
สำนักงาน ตัวแทน เจ้าของบ้าน บ้าน
84
ขั้นที่ 3 กำหนดความสัมพันธ์
บริษัทมีสำนักงานตั้งอยู่หลายแห่ง โดยในแต่ละแห่งมีตัวแทนนายหน้าทำงานประจำสำนักงานหลายคน 1 ทำงาน ประจำ N สำนักงาน ตัวแทน เจ้าของบ้าน บ้าน
85
ขั้นที่ 3 กำหนดความสัมพันธ์
ตัวแทนแต่ละคนจะเก็บรายการบ้านที่ต้องการฝากขายที่แต่ละคนได้รับการติดต่อให้ขาย ซึ่งบ้านที่มาฝากขายแต่ละแห่งจะถูกดูแลโดยตัวแทนคนใดคนหนึ่ง 1 ทำงาน ประจำ N สำนักงาน ตัวแทน 1 เก็บรายการ N เจ้าของบ้าน บ้าน
86
ขั้นที่ 3 กำหนดความสัมพันธ์
เจ้าของบ้านที่มาฝากขายแต่ละคนสามารถมาฝากขายบ้านกับบริษัทได้หลายหลัง 1 ทำงาน ประจำ N สำนักงาน ตัวแทน 1 เก็บรายการ N ฝากขาย เจ้าของบ้าน 1 N บ้าน
87
ขั้นที่ 4 กำหนดแอททริบิวต์
ข้อมูลที่จำเป็นของสำนักงานที่จัดเก็บได้แก่ รหัสสำนักงาน , ชื่อผู้จัดการสำนัก , เบอร์โทรศัพท์ , เบอร์โทรสาร และที่อยู่ โทรศัพท์ ชื่อผู้จัดการ ที่อยู่ โทรสาร รหัสสำนักงาน รหัสสำนักงาน สำนักงาน
88
ขั้นที่ 4 กำหนดแอททริบิวต์
ข้อมูลที่จัดเก็บเกี่ยวกับตัวแทนได้แก่ รหัสตัวแทน , ชื่อ และเบอร์โทรศัพท์ ชื่อตัวแทน รหัสตัวแทน รหัสตัวแทน โทรศัพท์ ตัวแทน
89
ขั้นที่ 4 กำหนดแอททริบิวต์
ข้อมูลที่จัดเก็บเกี่ยวกับบ้านได้แก่ รหัสบ้าน , ที่ตั้ง(บ้านเลขที่ , ถนน,ตำบล,อำเภอ,จังหวัด,รหัสไปรษณีย์),จำนวนห้องนอน , จำนวนห้องน้ำ,พื้นที่ , คอมมิสชัน,ราคาขาย คอมมิสชัน ราคาขาย รหัสบ้าน รหัสบ้าน บ้าน จน.ห้องนอน รหัสไปรษณีย์ พื้นที่ ที่ตั้ง จน.ห้องน้ำ จังหวัด บ้านเลขที่ อำเภอ ตำบล ถนน
90
ขั้นที่ 4 กำหนดแอททริบิวต์
ข้อมูลที่จัดเก็บเกี่ยวกับเจ้าของบ้าน ได้แก่ รหัสประจำตัว,ชื่อ,นามสกุล,โทรศัพท์ นามสกุล ชื่อ เจ้าของบ้าน รหัสประจำตัว โทรศัพท์
91
สำนักงาน ตัวแทน เจ้าของบ้าน บ้าน
โทรศัพท์ ชื่อผู้จัดการ ที่อยู่ ชื่อตัวแทน โทรสาร รหัสตัวแทน โทรศัพท์ รหัสสำนักงาน 1 ทำงาน ประจำ N สำนักงาน ตัวแทน 1 เก็บรายการ นามสกุล คอมมิสชัน ชื่อ ราคาขาย N รหัสบ้าน ฝากขาย เจ้าของบ้าน 1 N บ้าน จน.ห้องนอน รหัสไปรษณีย์ พื้นที่ ที่ตั้ง รหัสประจำตัว จน.ห้องน้ำ โทรศัพท์ จังหวัด บ้านเลขที่ อำเภอ ตำบล ถนน
92
ขั้นที่ 5 กำหนดกุญแจหลัก
โทรศัพท์ ชื่อตัวแทน ชื่อผู้จัดการ ที่อยู่ รหัสตัวแทน รหัสตัวแทน รหัสตัวแทน โทรศัพท์ โทรสาร รหัสสำนักงาน รหัสสำนักงาน รหัสสำนักงาน ตัวแทน สำนักงาน คอมมิสชัน ราคาขาย รหัสบ้าน รหัสบ้าน รหัสบ้าน นามสกุล ชื่อ บ้าน จน.ห้องนอน เจ้าของบ้าน รหัสไปรษณีย์ พื้นที่ ที่ตั้ง จน.ห้องน้ำ จังหวัด รหัสประจำตัว รหัสประจำตัว โทรศัพท์ บ้านเลขที่ อำเภอ ตำบล ถนน
93
สำนักงาน ตัวแทน เจ้าของบ้าน บ้าน
โทรศัพท์ ชื่อผู้จัดการ ที่อยู่ ชื่อตัวแทน โทรสาร รหัสตัวแทน โทรศัพท์ รหัสสำนักงาน 1 ทำงาน ประจำ N สำนักงาน ตัวแทน 1 เก็บรายการ นามสกุล คอมมิสชัน ชื่อ ราคาขาย N รหัสบ้าน ฝากขาย เจ้าของบ้าน 1 N บ้าน จน.ห้องนอน รหัสไปรษณีย์ พื้นที่ ที่ตั้ง รหัสประจำตัว จน.ห้องน้ำ โทรศัพท์ จังหวัด บ้านเลขที่ อำเภอ ตำบล ถนน
94
เพิ่มเติม จากการดำเนินการแบบเดิมที่กล่าวมา บริษัทมีการจัดเก็บข้อมูลเพิ่มเติมได้แก่ข้อมูลลูกค้า ประกอบด้วย รหัสลูกค้า , ชื่อ, ที่อยู่ , โทรศัพท์ ลูกค้าจะมีการติดต่อเพื่อขอเข้าชมบ้านที่ฝากขาย โดยสามารถเข้าชมบ้านได้หลายครั้ง หลายหลัง แต่จะอนุญาตให้เข้าชมบ้านแค่วันละหลังเท่านั้น โดยในการเข้าชมแต่ละครั้งจะมีการจัดเก็บข้อมูล วันที่เข้าชม , ความคิดเห็น , ลูกค้าที่เข้าชม , บ้านที่เข้าชม ในแต่ละวันก็จะมีลูกค้าเข้าชมบ้านแต่ละหลังได้หลายคน
95
สำนักงาน ตัวแทน ลูกค้า เจ้าของบ้าน บ้าน การเข้าชม
โทรศัพท์ ชื่อ ชื่อผู้จัดการ ที่อยู่ ชื่อตัวแทน โทรศัพท์ โทรสาร รหัสสำนักงาน รหัสตัวแทน โทรศัพท์ รหัสลูกค้า ที่อยู่ 1 ทำงาน ประจำ สำนักงาน N ตัวแทน ลูกค้า 1 เก็บรายการ 1 นามสกุล คอมมิสชัน ชื่อ ราคาขาย เข้าชม N รหัสบ้าน ฝากขาย เจ้าของบ้าน 1 N บ้าน จน.ห้องนอน N พื้นที่ ที่ตั้ง บ้านเลขที่ จน.ห้องน้ำ รหัสประจำตัว โทรศัพท์ การเข้าชม ถนน จังหวัด 1 ตำบล อำเภอ รหัสไปรษณีย์ N เข้าชมบ้าน ความคิดเห็น วันที่
96
กรณีศึกษาที่ 2
97
ขั้นที่ 1 ศึกษาข้อกำหนดของระบบงาน
บริษัท R.T. Trading Co.Ltd. เป็นบริษัทค้าส่งรายใหญ่ ต้องการพัฒนาระบบงานฐานข้อมูลเพื่อจัดเก็บข้อมูล โดยระบบงานที่สร้างขึ้นต้องสามารถรองรับการทำงานด้านต่างๆ ของบริษัท โดยมีขอบเขตของกาจัดเก็บข้อมูลของบริษัทมีการจัดเก็บข้อมูลเกี่ยวกับ แผนกการทำงานของบริษัท , พนักงาน , ลูกค้าของบริษัท , สินค้าที่นำมาจำหน่าย , ผู้ผลิตสินค้า, การสั่งซื้อสินค้าเข้ามาจำหน่ายและการออกใบเสร็จให้กับลูกค้า โดยมีรายละเอียดในการจัดเก็บข้อมูลดังนี้
98
ขั้นที่ 1 ศึกษาข้อกำหนดของระบบงาน
ข้อมูลแผนกการทำงาน ประกอบด้วยข้อมูล รหัสแผนกที่ไม่ซ้ำกัน , ชื่อแผนก , เบอร์โทรศัพท์ติดต่อ ซึ่งสามารถมีได้หลายเบอร์ ข้อมูลพนักงาน ประกอบด้วย รหัสพนักงานที่ไม่ซ้ำกัน , ชื่อพนักงาน(คำนำชื่อ , ชื่อ , นามสกุล) , ตำแหน่งงาน , เงินเดือน , เบอร์โทรศัพท์ , วันเกิด , อายุ(คำนวณจากวันเกิดได้)
99
ขั้นที่ 1 ศึกษาข้อกำหนดของระบบงาน
ข้อมูลลูกค้า ประกอบด้วย รหัสลูกค้าที่ไม่ซ้ำกัน , ชื่อลูกค้า(คำนำชื่อ , ชื่อ , นามสกุล) , ที่อยู่(บ้านเลขที่ , ถนน , อำเภอ/เมือง , จังหวัด/รัฐ , รหัสไปรษณีย์) , เบอร์โทรศัพท์(บ้าน , มือถือ) , Address ข้อมูลสินค้า ประกอบด้วย รหัสสินค้าที่ไม่ซ้ำกัน , ชื่อสินค้า , ราคา , จำนวนคงเหลือ , ระดับคงสต็อก
100
ขั้นที่ 1 ศึกษาข้อกำหนดของระบบงาน
ข้อมูลผู้ผลิตสินค้า ประกอบด้วย รหัสผู้ผลิตที่ไม่ซ้ำกัน , ชื่อบริษัท , เบอร์โทรศัพท์ติดต่อ , Address ,ที่อยู่(เลขที่ , ถนน , อำเภอ/เมือง , จังหวัด/รัฐ , รหัสไปรษณีย์) ข้อมูลใบสั่งซื้อสินค้าของบริษัท ประกอบด้วย หมายเลขใบสั่งซื้อที่ไม่ซ้ำกัน , วันที่สั่งซื้อ ,ยอดรวมทั้งหมด(คำนวณจากรายการที่สั่งทั้งหมดได้) ข้อมูลใบเสร็จรับเงินของลูกค้า ประกอบด้วย หมายเลขใบเสร็จที่ไม่ซ้ำกัน , วันที่ออกใบเสร็จ , ยอดรวมทั้งหมด(คำนวณจากรายการที่สั่งทั้งหมดได้)
101
ขั้นที่ 1 ศึกษาข้อกำหนดของระบบงาน
ข้อกำหนดการทำงานของบริษัท(Business rule) มีลักษณะดังนี้ การทำงานของบริษัท พนักงาน แต่ละคนต้องสังกัดแผนกใดแผนกหนึ่ง เพียงแค่ 1 แผนกเท่านั้น ซึ่งในทุก ๆ แผนกก็ต้องมีพนักงานที่สังกัดอย่างน้อย 1 คน การบริหารงานของแผนก จะมีพนักงานบางคนที่ถูกแต่งตั้งให้ดำรงตำแหน่งผู้จัดการแผนก โดยแต่ละแผนกจะมีผู้จัดการแผนกละ 1 คน ไม่ซ้ำคนกันในแต่ละแผนก และเก็บข้อมูลวันที่รับตำแหน่ง
102
ขั้นที่ 1 ศึกษาข้อกำหนดของระบบงาน
การบริหารงานของพนักงาน จะมีการแบ่งสายงานของพนักงานออกเป็นกลุ่มงาน โดยจะมีพนักงานบางคนถูกคัดเลือกให้ทำหน้าที่เป็นหัวหน้าสายงานที่ดูแลพนักงานในสายงานของตนเอง ทำให้ทราบว่าพนักงานแต่ละคนมีใครเป็นหัวหน้าสายงานของตนเอง ในการนำสินค้าเข้ามาขายของบริษัท บริษัทจะสั่งซื้อสินค้าจากผู้ผลิตเข้ามาขาย ในการสั่งซื้อแต่ละครั้งจะสั่งจากผู้ผลิต 1 ราย แต่สามารถสั่งซื้อสินค้าเข้ามาได้หลายรายการ โดยระบุจำนวนที่สั่งในแต่ละครั้งที่สั่งซื้อ
103
ขั้นที่ 1 ศึกษาข้อกำหนดของระบบงาน
ในการขายสินค้าให้กับลูกค้า บริษัทจะออกใบเสร็จรับเงินเพื่อยืนยันการขาย โดยใน 1ใบเสร็จสามารถระบุรายการสินค้าที่ซื้อได้หลายรายการ และระบุจำนวนที่ซื้อแต่ละรายการ ราคารวม (คำนวณจากราคาสินค้าได้) ตัวอย่างใบเสร็จรับเงินดังรูปที่ 3.1 ในการออกใบเสร็จรับเงินจะมีพนักงานเป็นผู้ยืนยันการขายในแต่ละครั้งด้วยเสมอ
104
ตัวอย่างใบเสร็จรับเงิน
เลขที่ใบสั่งซื้อ วันที่ออก ชื่อลูกค้า …………………………… ที่อยู่ รหัสสินค้า ชื่อสินค้า จำนวน ราคา รวมมูลค่า ภาษีมูลค่าเพิ่ม(VAT) รวมการสั่งซื้อ ผู้ออกใบเสร็จ
105
ขั้นที่ 2 กำหนดเอนทิตี้
แผนก ใบสั่งซื้อ พนักงาน สินค้า ผู้ผลิต ใบเสร็จรับเงิน ลูกค้า
106
ขั้นที่ 3 กำหนดความสัมพันธ์
การทำงานของบริษัท พนักงาน แต่ละคนต้องสังกัดแผนกใดแผนกหนึ่ง เพียงแค่ 1 แผนกเท่านั้น ซึ่งในทุก ๆ แผนกก็ต้องมีพนักงานที่สังกัดอย่างน้อย 1 คน N 1 พนักงาน แผนก สังกัด
107
ขั้นที่ 3 กำหนดความสัมพันธ์
การบริหารงานของแผนก จะมีพนักงานบางคนที่ถูกแต่งตั้งให้ดำรงตำแหน่งผู้จัดการแผนก โดยแต่ละแผนกจะมีผู้จัดการแผนกละ 1 คน ไม่ซ้ำคนกันในแต่ละแผนก และเก็บข้อมูลวันที่รับตำแหน่ง 1 1 พนักงาน บริหารงาน แผนก วันที่รับตำแหน่ง
108
ขั้นที่ 3 กำหนดความสัมพันธ์
การบริหารงานของพนักงาน จะมีการแบ่งสายงานของพนักงานออกเป็นกลุ่มงาน โดยจะมีพนักงานบางคนถูกคัดเลือกให้ทำหน้าที่เป็นหัวหน้าสายงานที่ดูแลพนักงานในสายงานของตนเอง ทำให้ทราบว่าพนักงานแต่ละคนมีใครเป็นหัวหน้าสายงานของตนเอง พนักงาน หัวหน้า ลูกทีม 1 N ดูแล
109
ขั้นที่ 3 กำหนดความสัมพันธ์
ในการนำสินค้าเข้ามาขายของบริษัท บริษัทจะสั่งซื้อสินค้าจากผู้ผลิตเข้ามาขาย ในการสั่งซื้อแต่ละครั้งจะสั่งจากผู้ผลิต 1 ราย แต่สามารถสั่งซื้อสินค้าเข้ามาได้หลายรายการ โดยระบุจำนวนที่สั่งในแต่ละครั้งที่สั่งซื้อ 1 N ผู้ผลิต ใบสั่งซื้อ สั่งซื้อกับ N มีรายการ สั่งซื้อ M จำนวนที่สั่งซื้อ สินค้า
110
ขั้นที่ 3 กำหนดความสัมพันธ์
ในการขายสินค้าให้กับลูกค้า บริษัทจะออกใบเสร็จรับเงินเพื่อยืนยันการขาย โดยใน 1ใบเสร็จสามารถระบุรายการสินค้าที่ซื้อได้หลายรายการ และระบุจำนวนที่ซื้อแต่ละรายการ ราคารวม (คำนวณจากราคาสินค้าได้) 1 N ลูกค้า ใบเสร็จ ได้รับ N มีรายการซื้อ M จำนวนที่ซื้อ สินค้า ราคารวม
111
ขั้นที่ 3 กำหนดความสัมพันธ์
ในการออกใบเสร็จรับเงินจะมีพนักงานเป็นผู้ยืนยันการขายในแต่ละครั้งด้วยเสมอ 1 N พนักงาน ออกโดย ใบเสร็จ
112
ขั้นที่ 4 กำหนดแอททริบิวต์
ข้อมูลแผนกการทำงาน ประกอบด้วยข้อมูล รหัสแผนกที่ไม่ซ้ำกัน , ชื่อแผนก , เบอร์โทรศัพท์ติดต่อ ซึ่งสามารถมีได้หลายเบอร์ ชื่อแผนก รหัสแผนก โทรศัพท์ แผนก
113
ขั้นที่ 4 กำหนดแอททริบิวต์
ข้อมูลพนักงาน ประกอบด้วย รหัสพนักงานที่ไม่ซ้ำกัน , ชื่อพนักงาน(คำนำชื่อ , ชื่อ , นามสกุล) , ตำแหน่งงาน , เงินเดือน , เบอร์โทรศัพท์ , วันเกิด , อายุ(คำนวณจากวันเกิดได้) นามสกุล ชื่อ คำนำชื่อ ตำแหน่งงาน ชื่อพนักงาน เงินเดือน เบอร์โทรศัพท์ พนักงาน รหัสพนักงาน วันเกิด อายุ
114
ขั้นที่ 4 กำหนดแอททริบิวต์
ข้อมูลลูกค้า ประกอบด้วย รหัสลูกค้าที่ไม่ซ้ำกัน , ชื่อลูกค้า(คำนำชื่อ , ชื่อ , นามสกุล) , ที่อยู่(บ้านเลขที่ , ถนน , อำเภอ/เมือง , จังหวัด/รัฐ , รหัสไปรษณีย์) , เบอร์โทรศัพท์(บ้าน , มือถือ) , Address ถนน นามสกุล ชื่อ บ้านเลขที่ อำเภอ คำนำชื่อ อีเมลล์ จังหวัด ชื่อลูกค้า ที่อยู่ รหัสไปรษณีย์ ลูกค้า รหัสลูกค้า เบอร์บ้าน เบอร์โทรศัพท์ เบอร์มือถือ
115
ขั้นที่ 4 กำหนดแอททริบิวต์
ข้อมูลสินค้า ประกอบด้วย รหัสสินค้าที่ไม่ซ้ำกัน , ชื่อสินค้า , ราคา , จำนวนคงเหลือ , ระดับคงสต๊อก ชื่อสินค้า รหัสสินค้า ราคา จำนวนคงเหลือ สินค้า ระดับคงสต๊อก
116
ขั้นที่ 4 กำหนดแอททริบิวต์
ข้อมูลผู้ผลิตสินค้า ประกอบด้วย รหัสผู้ผลิตที่ไม่ซ้ำกัน , ชื่อบริษัท , เบอร์โทรศัพท์ติดต่อ , Address ,ที่อยู่(เลขที่ , ถนน , อำเภอ/เมือง , จังหวัด/รัฐ , รหัสไปรษณีย์) ถนน เบอร์โทรศัพท์ บ้านเลขที่ อำเภอ อีเมลล์ จังหวัด ชื่อบริษัท ที่อยู่ รหัสไปรษณีย์ ผู้ผลิต รหัสผู้ผลิต
117
ขั้นที่ 4 กำหนดแอททริบิวต์
ข้อมูลใบสั่งซื้อสินค้าของบริษัท ประกอบด้วย หมายเลขใบสั่งซื้อที่ไม่ซ้ำกัน , วันที่สั่งซื้อ ,ยอดรวมทั้งหมด(คำนวณจากรายการที่สั่งทั้งหมดได้) วันที่สั่งซื้อ ยอดรวมทั้งหมด หมายเลขใบสั่งซื้อ ใบสั่งซื้อ
118
ขั้นที่ 4 กำหนดแอททริบิวต์
ข้อมูลใบเสร็จรับเงินของลูกค้า ประกอบด้วย หมายเลขใบเสร็จที่ไม่ซ้ำกัน , วันที่ออกใบเสร็จ , ยอดรวมทั้งหมด(คำนวณจากรายการที่สั่งทั้งหมดได้) วันที่ออกใบเสร็จ ยอดรวมทั้งหมด หมายเลขใบเสร็จ ใบเสร็จ
119
ขั้นที่ 5 กำหนดคีย์หลัก
ข้อมูลแผนกการทำงาน ประกอบด้วยข้อมูล รหัสแผนกที่ไม่ซ้ำกัน , ชื่อแผนก , เบอร์โทรศัพท์ติดต่อ ซึ่งสามารถมีได้หลายเบอร์ ชื่อแผนก รหัสแผนก รหัสแผนก โทรศัพท์ แผนก
120
ขั้นที่ 5 กำหนดคีย์หลัก
ข้อมูลพนักงาน ประกอบด้วย รหัสพนักงานที่ไม่ซ้ำกัน , ชื่อพนักงาน(คำนำชื่อ , ชื่อ , นามสกุล) , ตำแหน่งงาน , เงินเดือน , เบอร์โทรศัพท์ , วันเกิด , อายุ(คำนวณจากวันเกิดได้) , วันที่รับตำแหน่ง นามสกุล ชื่อ คำนำชื่อ ตำแหน่งงาน ชื่อพนักงาน เงินเดือน เบอร์โทรศัพท์ พนักงาน รหัสพนักงาน รหัสพนักงาน วันเกิด อายุ
121
ขั้นที่ 5 กำหนดคีย์หลัก
ข้อมูลลูกค้า ประกอบด้วย รหัสลูกค้าที่ไม่ซ้ำกัน , ชื่อลูกค้า(คำนำชื่อ , ชื่อ , นามสกุล) , ที่อยู่(บ้านเลขที่ , ถนน , อำเภอ/เมือง , จังหวัด/รัฐ , รหัสไปรษณีย์) , เบอร์โทรศัพท์(บ้าน , มือถือ) , Address ถนน นามสกุล ชื่อ บ้านเลขที่ อำเภอ คำนำชื่อ อีเมลล์ จังหวัด ชื่อลูกค้า ที่อยู่ รหัสไปรษณีย์ ลูกค้า รหัสลูกค้า รหัสลูกค้า เบอร์บ้าน เบอร์โทรศัพท์ เบอร์มือถือ
122
ขั้นที่ 5 กำหนดคีย์หลัก
ข้อมูลสินค้า ประกอบด้วย รหัสสินค้าที่ไม่ซ้ำกัน , ชื่อสินค้า , ราคา , จำนวนคงเหลือ , ระดับคงสต๊อก ชื่อสินค้า รหัสสินค้า รหัสสินค้า ราคา จำนวนคงเหลือ สินค้า ระดับคงสต๊อก
123
ขั้นที่ 5 กำหนดคีย์หลัก
ข้อมูลผู้ผลิตสินค้า ประกอบด้วย รหัสผู้ผลิตที่ไม่ซ้ำกัน , ชื่อบริษัท , เบอร์โทรศัพท์ติดต่อ , Address ,ที่อยู่(เลขที่ , ถนน , อำเภอ/เมือง , จังหวัด/รัฐ , รหัสไปรษณีย์) ถนน เบอร์โทรศัพท์ บ้านเลขที่ อำเภอ อีเมลล์ จังหวัด ชื่อบริษัท ที่อยู่ รหัสไปรษณีย์ ผู้ผลิต รหัสผู้ผลิต รหัสผู้ผลิต
124
ขั้นที่ 5 กำหนดคีย์หลัก
ข้อมูลใบสั่งซื้อสินค้าของบริษัท ประกอบด้วย หมายเลขใบสั่งซื้อที่ไม่ซ้ำกัน , วันที่สั่งซื้อ ,ยอดรวมทั้งหมด(คำนวณจากรายการที่สั่งทั้งหมดได้) วันที่สั่งซื้อ วันที่สั่งซื้อ ยอดรวมทั้งหมด ยอดรวมทั้งหมด หมายเลขใบสั่งซื้อ หมายเลขใบสั่งซื้อ ใบสั่งซื้อ
125
ขั้นที่ 5 กำหนดคีย์หลัก
ข้อมูลใบเสร็จรับเงินของลูกค้า ประกอบด้วย หมายเลขใบเสร็จที่ไม้ซ้ำกัน , วันที่ออกใบเสร็จ , ยอดรวมทั้งหมด(คำนวณจากรายการที่สั่งทั้งหมดได้) วันที่ออกใบเสร็จ ยอดรวมทั้งหมด หมายเลขใบเสร็จ หมายเลขใบเสร็จ ใบเสร็จ
126
ผู้ผลิต พนักงาน ใบสั่งซื้อ แผนก สินค้า ลูกค้า ใบเสร็จ
ถนน ชื่อบริษัท บ้านเลขที่ ดูแล รหัสผู้ผลิต อำเภอ หัวหน้า ลูกทีม ที่อยู่ 1 N ผู้ผลิต เบอร์โทรศัพท์ จังหวัด รหัสพนักงาน คำนำชื่อ ชื่อ เบอร์โทรศัพท์ 1 รหัสไปรษณีย์ พนักงาน อีเมลล์ ตำแหน่งงาน ชื่อพนักงาน สั่งซื้อกับ นามสกุล เงินเดือน 1 วันเกิด N หมายเลขใบสั่งซื้อ วันที่สั่งซื้อ N สังกัด บริหาร อายุ 1 ใบสั่งซื้อ ยอดรวมทั้งหมด 1 1 วันที่รับตำแหน่ง M รหัสแผนก แผนก มีรายการสั่งซื้อ ออกโดย จำนวนที่สั่งซื้อ ชื่อแผนก ถนน รหัสสินค้า โทรศัพท์ N บ้านเลขที่ ราคา อำเภอ สินค้า นามสกุล อีเมลล์ N จังหวัด ชื่อ ระดับคงสต๊อก ชื่อสินค้า ชื่อลูกค้า ที่อยู่ คำนำชื่อ รหัสไปรษณีย์ N จำนวนคงเหลือ มีรายการซื้อ M 1 ลูกค้า N ได้รับ ใบเสร็จ เบอร์โทรศัพท์ จำนวนที่ซื้อ ยอดรวมทั้งหมด รหัสลูกค้า เบอร์บ้าน หมายเลขใบเสร็จ วันที่ออกใบเสร็จ เบอร์มือถือ
127
ใบสั่งซื้อ ผู้ผลิต สินค้า ใบเสร็จ ลูกค้า พนักงาน แผนก
สั่งซื้อกับ N ใบสั่งซื้อ รหัสผู้ผลิต ผู้ผลิต ชื่อบริษัท เบอร์โทรศัพท์ อีเมลล์ ที่อยู่ บ้านเลขที่ ถนน อำเภอ จังหวัด รหัสไปรษณีย์ 1 หมายเลขใบสั่งซื้อ วันที่สั่งซื้อ ยอดรวมทั้งหมด มีรายการสั่งซื้อ M สินค้า ชื่อสินค้า ราคา จำนวนคงเหลือ ระดับคงสต๊อก รหัสสินค้า มีรายการซื้อ จำนวนที่สั่งซื้อ ใบเสร็จ วันที่ออกใบเสร็จ หมายเลขใบเสร็จ จำนวนที่ซื้อ ลูกค้า ชื่อลูกค้า คำนำชื่อ ชื่อ นามสกุล เบอร์บ้าน เบอร์มือถือ รหัสลูกค้า ได้รับ พนักงาน รหัสพนักงาน ชื่อพนักงาน ตำแหน่งงาน เงินเดือน วันเกิด อายุ แผนก ออกโดย สังกัด บริหาร วันที่รับตำแหน่ง ดูแล หัวหน้า ลูกทีม รหัสแผนก ชื่อแผนก โทรศัพท์
128
กรณีศึกษาที่ 3
129
Business Rule ร้านขายหนังสือผ่านระบบอินเทอร์เน็ตมีขอบเขตการจัดเก็บข้อมูลของระบบงานดังนี้ ข้อมูลประเภทหนังสือ ข้อมูลที่จัดเก็บประกอบด้วย รหัสประเภทหนังสือ , ชื่อประเภท ข้อมูลหนังสือแต่ละรายการ ข้อมูลที่จัดเก็บประกอบด้วย รหัสISBN , ชื่อเรื่องหนังสือ , ราคา , ปีที่ผลิต , ครั้งที่พิมพ์ , รูปภาพ ข้อมูลผู้แต่งหนังสือ ข้อมูลที่จัดเก็บประกอบด้วย รหัสผู้แต่ง , ชื่อผู้แต่ง , อีเมลล์ของผู้แต่ง ข้อมูลสำนักพิมพ์ ข้อมูลที่จัดเก็บประกอบด้วย รหัสสำนักพิมพ์ , ที่อยู่ , โทรศัพท์ , เว็บไซต์ , อีเมลล์ ข้อมูลลูกค้าที่เข้ามาซื้อหนังสือในเว็บไซต์ของร้านจะต้องมีการลงทะเบียนเพื่อเป็นสมาชิกของร้านก่อนจึงจะสามารถสั่งซื้อหนังสือในร้านได้ โดยข้อมูลที่จัดเก็บในการลงทะเบียนประกอบด้วย รหัสลูกค้า , ชื่อ , อีเมลล์ , ที่อยู่(ประกอบด้วย บ้านเลขที่ , ถนน , ตำบล , อำเภอ , จังหวัด , รหัสไปรษณีย์) , โทรศัพท์ , ชื่อเข้าใช้ระบบ , รหัสผ่าน ข้อมูลการสั่งซื้อ ข้อมูลที่จัดเก็บประกอบด้วย รหัสการสั่งซื้อ , วันที่สั่งซื้อ , วันที่ส่งสินค้า , ยอดรวม(คำนวณจากราคารวมของหนังสือแต่ละรายการในใบสั่งซื้อ) , ภาษีมูลค่าเพิ่ม(คำนวณร้อยละ 7 จากยอดซื้อ)
130
Business Rule ความสัมพันธ์ระหว่างข้อมูลต่าง ๆ มีดังนี้
หนังสือแต่ละรายการจัดอยู่ในประเภทหนังสือประเภทใดประเภทหนึ่งเท่านั้น ประเภทหนังสือแต่ละประเภทมีหนังสือจัดอยู่ในประเภทนั้นได้หลายรายการ หนังสือแต่ละรายการจะถูกจัดพิมพ์จากสำนักพิมพ์ใดสำนักพิมพ์หนึ่งเท่านั้น สำนักพิมพ์แต่ละแห่งสามารถจัดพิมพ์หนังสือได้หลายรายการ หนังสือบางเล่มอาจมีผู้แต่งแต่งหนังสือร่วมกันหลายคน และผู้แต่งแต่ละคนก็อาจจะแต่งหนังสือได้หลายเล่ม ลูกค้าแต่ละคนสามารถมีการสั่งซื้อหนังสือได้หลายครั้ง ในการสั่งซื้อหนังสือแต่ละครั้งสามารถมีรายการสั่งซื้อหนังสือได้ครั้งหลายรายการ โดยระบุจำนวนเล่มที่ซื้อของแต่ละรายการ
131
กำหนด Entity ของระบบงาน
ผู้แต่ง หนังสือ ประเภทหนังสือ สำนักพิมพ์ การสั่งซื้อ ลูกค้า
132
กำหนดความสัมพันธ์ของแต่ละเอนทิตี้
หนังสือแต่ละรายการจัดอยู่ในประเภทหนังสือประเภทใดประเภทหนึ่งเท่านั้น ประเภทหนังสือแต่ละประเภทมีหนังสือจัดอยู่ในประเภทนั้นได้หลายรายการ หนังสือ N จัดแบ่งเป็น 1 ประเภทหนังสือ
133
กำหนดความสัมพันธ์ของแต่ละเอนทิตี้
หนังสือแต่ละรายการจะถูกจัดพิมพ์จากสำนักพิมพ์ใดสำนักพิมพ์หนึ่งเท่านั้น สำนัพิมพ์แต่ละแห่งสามารถจัดพิมพ์หนังสือได้หลายรายการ หนังสือ N จัดแบ่งเป็น 1 ประเภทหนังสือ N จัดพิมพ์ 1 สำนักพิมพ์
134
กำหนดความสัมพันธ์ของแต่ละเอนทิตี้
หนังสือบางเล่มอาจมีผู้แต่งแต่งหนังสือร่วมกันหลายคน และผู้แต่งแต่ละคนก็อาจจะแต่งหนังสือได้หลายเล่ม ผู้แต่ง M แต่ง N หนังสือ N จัดแบ่งเป็น 1 ประเภทหนังสือ N จัดพิมพ์ 1 สำนักพิมพ์
135
กำหนดความสัมพันธ์ของแต่ละเอนทิตี้
ลูกค้าแต่ละคนสามารถมีการสั่งซื้อหนังสือได้หลายครั้ง ผู้แต่ง M แต่ง N หนังสือ N จัดแบ่งเป็น 1 ประเภทหนังสือ N จัดพิมพ์ 1 สำนักพิมพ์ การสั่งซื้อ N สั่งซื้อ 1 ลูกค้า
136
กำหนดความสัมพันธ์ของแต่ละเอนทิตี้
ในการสั่งซื้อหนังสือแต่ละครั้งสามารถมีรายการสั่งซื้อหนังสือได้ครั้งหลายรายการ โดยระบุจำนวนเล่มที่ซื้อของแต่ละรายการ ผู้แต่ง M แต่ง N หนังสือ N จัดแบ่งเป็น 1 ประเภทหนังสือ N N จัดพิมพ์ มีรายการ 1 M สำนักพิมพ์ การสั่งซื้อ N ใช้งาน 1 ลูกค้า
137
กำหนดแอททริบิวต์ของแต่ละเอนทิตี้
ครั้งที่พิมพ์ รูปภาพ ปีที่พิมพ์ ชื่อผู้แต่ง ชื่อหนังสือ รหัสประเภทหนังสือ ชื่อประเภท อีเมลล์ รหัสผู้แต่ง ราคา รหัสISBN ผู้แต่ง M แต่ง N หนังสือ N จัดแบ่งเป็น 1 ประเภทหนังสือ N N ชื่อเข้าระบบ เว็บไซต์ จำนวน จัดพิมพ์ มีรายการ โทรศัพท์ รหัสสำนักพิมพ์ รหัสผ่าน ชื่อ 1 ราคารวม M สำนักพิมพ์ การสั่งซื้อ N สั่งซื้อ 1 ลูกค้า วันทั่งซื้อ วันทั่งส่งสินค้า รหัสลูกค้า ที่อยู่ โทรศัพท์ ยอดรวม อีเมลล์ อีเมลล์ รหัสการสั่งซื้อ ที่อยู่ ชื่อสำนักพิมพ์ บ้านเลขที่ ภาษีมูลค่าเพิ่ม รหัสไปรษณีย์ ถนน ตำบล อำเภอ จังหวัด
138
ผู้แต่ง หนังสือ สำนักพิมพ์ การสั่งซื้อ ลูกค้า
ครั้งที่พิมพ์ รูปภาพ ปีที่พิมพ์ ชื่อผู้แต่ง ชื่อหนังสือ รหัสประเภทหนังสือ ชื่อประเภท อีเมลล์ รหัสผู้แต่ง ราคา รหัสISBN ผู้แต่ง M แต่ง N หนังสือ N จัดแบ่งเป็น 1 ประเภทหนังสือ N N ชื่อเข้าระบบ เว็บไซต์ จำนวน จัดพิมพ์ มีรายการ โทรศัพท์ รหัสสำนักพิมพ์ รหัสผ่าน ชื่อ 1 ราคารวม M สำนักพิมพ์ การสั่งซื้อ N ใช้งาน 1 ลูกค้า วันทั่งซื้อ วันทั่งส่งสินค้า รหัสลูกค้า ที่อยู่ โทรศัพท์ ยอดรวม อีเมลล์ อีเมลล์ รหัสการสั่งซื้อ ที่อยู่ ชื่อสำนักพิมพ์ บ้านเลขที่ ภาษีมูลค่าเพิ่ม รหัสไปรษณีย์ ถนน ตำบล อำเภอ จังหวัด
139
การแปลง ER Diagram เป็น Relational Schema
140
การแปลงE-R Model เป็น Relational Schema
ขั้นที่ 1 การแปลง Regular Entity และ Attribute ขั้นที่ 2 การแปลง Weak Entity ขั้นที่ 3 การแปลงความสัมพันธ์
141
ขั้นที่ 1 การแปลง Regular Entity
เอนทิตี้แบบปกติ(Regular entity) แต่ละเอนทิตี้ใน ERD จะถูกแปลงเป็นแต่ละรีเลชัน(relation) ชื่อของเอนทิตี้ก็จะกลายเป็นชื่อของรีเลชัน แต่ละแอททริบิวต์ของเอนทิตี้ก็จะกลายเป็นแต่ละ แอททริบิวต์(คอลัมน์)ของรีเลชัน แอททริบิวต์ที่เป็นกุญแจหลัก(Primary key)ของเอนทิตี้ก็จะถูกกำหนดให้เป็นกุญแจหลักของรีเลชัน
142
ขั้นที่ 1 การแปลง Regular Entity
การแปลง Regular Entity ที่มี Atomic Attribute การแปลง Regular Entity ที่มี Atomic Attribute A a1 a1 a2 … an a2 A หรือ an A(a1 , a2 , … , an) แต่ละแอททริบิวต์ของเอนทิตี้ จะแปลงเป็นแต่ละแอททริบิวต์ของรีเลชัน
143
ขั้นที่ 1 การแปลง Regular Entity
การแปลง Regular Entity ที่มี Atomic Attribute รหัสนศ. ที่อยู่ ชื่อ นักศึกษา โปรแกรมวิชา นามสกุล นักศึกษา รหัสนศ. ชื่อ นามสกุล ที่อยู่ โปรแกรมวิชา หรือ นักศึกษา(รหัสนศ. , ชื่อ , นามสกุล , ที่อยู่ , โปรแกรมวิชา)
144
ขั้นที่ 1 การแปลง Regular Entity
การแปลง Regular Entity ที่มี Composite Attribute Composite attribute a5 a6 a4 A a3 a1 a2 a4 a5 a6 a1 a2 A หรือ A(a1 , a2 , a4, a5 , a6)
145
ขั้นที่ 1 การแปลง Regular Entity
การแปลง Regular Entity ที่มี Composite Attribute ถนน รหัสนศ. เลขที่ อำเภอ ชื่อ นักศึกษา จังหวัด ที่อยู่ นามสกุล โปรแกรมวิชา นักศึกษา รหัสนศ. ชื่อ นามสกุล เลขที่ ถนน อำเภอ จังหวัด โปรแกรมวิชา หรือ นักศึกษา(รหัสนศ. , ชื่อ , นามสกุล , เลขที่ , ถนน , อำเภอ , จังหวัด , โปรแกรมวิชา)
146
ขั้นที่ 1 การแปลง Regular Entity
การแปลง Regular Entity ที่มี Multivalued Attribute A A3 a1 a1 a2 a1 a3 a2 A a3 หรือ นำ Multivalued attribute มาสร้างเป็นรีเลชันใหม่ กุญแจหลักของรีเลชันใหม่คือ กุญแจหลักของรีเลชันเดิมและ แอททริบิวต์แบบ Multivalued A(a1 , a2) A3(a1 , a3)
147
ขั้นที่ 1 การแปลง Regular Entity
การแปลง Regular Entity ที่มี Multivalued Attribute รหัสนศ. ที่อยู่ ชื่อ นักศึกษา โปรแกรมวิชา นามสกุล โทรศัพท์ นักศึกษา รหัสนศ. ชื่อ นามสกุล ที่อยู่ โปรแกรมวิชา โทรศัพท์นักศึกษา รหัสนศ. โทรศัพท์
148
ขั้นที่ 1 การแปลง Regular Entity
การแปลง Regular Entity ที่มี Derived Attribute A a1 a1 a2 a3 a2 A หรือ a3 a4 A(a1 , a2 , a3) Derived attribute ไม่ต้องแปลงเป็น แอททริบิวต์ของรีเลชัน
149
ขั้นที่ 1 การแปลง Regular Entity
การแปลง Regular Entity ที่มี Derived Attribute วันเกิด รหัสนศ. ที่อยู่ ชื่อ นักศึกษา โปรแกรมวิชา นามสกุล อายุ นักศึกษา รหัสนศ. ชื่อ นามสกุล ที่อยู่ วันเกิด โปรแกรมวิชา หรือ นักศึกษา(รหัสนศ. , ชื่อ , นามสกุล , ที่อยู่ , วันเกิด , โปรแกรมวิชา)
150
ความเหมือนและความต่าง
พนักงาน รหัสพนักงาน ชื่อพนักงาน โทรศัพท์ พนักงาน รหัสพนักงาน ชื่อพนักงาน โทรศัพท์ เบอร์มือถือ เบอร์บ้าน พนักงาน รหัสพนักงาน ชื่อพนักงาน โทรศัพท์
151
พนักงาน พนักงาน ชื่อพนักงาน รหัสพนักงาน โทรศัพท์ รหัสพนักงาน
152
พนักงาน รหัสพนักงาน ชื่อพนักงาน โทรศัพท์ เบอร์มือถือ เบอร์บ้าน
153
พนักงาน รหัสพนักงาน ชื่อพนักงาน โทรศัพท์
154
ขั้นที่ 2 การแปลง Weak Entity
ชื่อของเอนทืติตี้แบบอ่อนก็จะกลายเป็นชื่อของรีเลชัน แต่ละแอททริบิวต์ของเอนทิตี้แบบอ่อน ก็จะแปลงเป็นแอททริบิวต์ของรีเลชันตามลักษณะการแปลงแต่ละชนิดของแอททริบิวต์(เหมือนขั้นที่ 1) กุญแจหลักของรีเลชันคือ กุญแจหลักของรีเลชันที่เป็น Owner ที่มีความสัมพันธ์เชิงระบุ(Identifying relationship)กับเอนทิตี้แบบอ่อนแต่ละรีเลชัน ประกอบกันกับแอททริบิวต์ที่เป็นส่วนประกอบของกุญแจหลักจากเอนทิตี้แบบอ่อนเอง(ถ้ามี) กุญแจหลักของรีเลชันที่เป็นOwner นอกจากจะเป็นส่วนประกอบของกุญแจหลักแล้ว ยังเป็นกุญแจนอกของรีเลชันใหม่นี้ด้วย
155
ขั้นที่ 2 การแปลง Weak Entity
Owner Entity Partial key b1 a1 1 N A R B a2 b2 A B a1 a2 a1 b1 b2 A(a1 , a2) B(a1 , b1 , b2) *** a1 และ b1 รวมกันเป็นกุญแจหลัก(Primary key) และ a1 เป็นกุญแจนอก(Foreign key) ของรีเลชัน B เชื่อมโยง(References) ไปยังรีเลชัน A
156
ขั้นที่ 2 การแปลง Weak Entity
รหัสนศ. ครั้งที่ คะแนน ชื่อ 1 N นักศึกษา มี ผลการทดสอบ โปรแกรมวิชา นักศึกษา ผลการทดสอบ รหัสนศ. ชื่อ โปรแกรมวิชา รหัสนศ. ครั้งที่ คะแนน หรือ นักศึกษา(รหัสนศ. , ชื่อ , โปรแกรมวิชา) ผลการทดสอบ(รหัสนศ. , ครั้งที่ , คะแนน)
157
ขั้นที่ 3 การแปลงความสัมพันธ์(Relationship)
ความสัมพันธ์แบบ One-to-Many ความสัมพันธ์แบบ Many-to-Many ความสัมพันธ์แบบ One-to-One
158
ความสัมพันธ์แบบ One-to-Many
ขั้นที่ 3 การแปลงความสัมพันธ์(Relationship) ความสัมพันธ์แบบ One-to-Many แปลงแต่ละเอนทิตี้ที่มีความสัมพันธ์กันแบบ 1:N นำกุญแจหลัก(Primary key)ของรีเลชัที่เป็นเอนทิตี้ที่อยู่ด้าน 1 ของความสัมพันธ์ไปเป็นกุญแจนอก(Foreign key)ของรีเลชันของเอนทิตี้ที่อยู่ด้าน N
159
ความสัมพันธ์แบบ One-to-Many
ขั้นที่ 3 การแปลงความสัมพันธ์(Relationship) ความสัมพันธ์แบบ One-to-Many r1 b1 a1 1 N A R B a2 b2 A B a1 a2 b1 b2 a1 r1 A(a1 , a2) B(b1 , b2 , a1 , r1)
160
ความสัมพันธ์แบบ One-to-Many
ขั้นที่ 3 การแปลงความสัมพันธ์(Relationship) ความสัมพันธ์แบบ One-to-Many r1 b1 a1 N 1 A R B a2 b2 A B a1 a2 b1 r1 b1 b2 A(a1 , a2 , b1 , r1) B(b1 , b2)
161
ความสัมพันธ์แบบ One-to-Many
ขั้นที่ 3 การแปลงความสัมพันธ์(Relationship) ความสัมพันธ์แบบ One-to-Many รหัสแผนก รหัสพนักงาน N 1 พนักงาน สังกัด แผนก ชื่อ ชื่อแผนก พนักงาน(รหัสพนักงาน , ชื่อ , รหัสแผนก) แผนก(รหัสแผนก , ชื่อแผนก)
162
ความสัมพันธ์แบบ One-to-Many
ขั้นที่ 3 การแปลงความสัมพันธ์(Relationship) ความสัมพันธ์แบบ One-to-Many รหัสนศ. รหัสอาจารย์ 1 N อาจารย์ เป็นที่ปรึกษา นักศึกษา ชื่ออาจารย์ ชื่อนศ. อาจารย์(รหัสอาจารย์ , ชื่ออาจารย์) นักศึกษา(รหัสนศ. , ชื่อนศ. , รหัสอาจารย์ที่ปรึกษา)
163
ความสัมพันธ์แบบ One-to-Many
ขั้นที่ 3 การแปลงความสัมพันธ์(Relationship) ความสัมพันธ์แบบ One-to-Many ตำแหน่ง รหัสพนักงาน พนักงาน เงินเดือน ชื่อ 1 N หัวหน้า ลูกน้อง ควบคุม ต้องตั้งชื่อ Attribute ให้ต่างจาก primary key แต่มี Domain แบบเดียวกัน พนักงาน(รหัสพนักงาน , ชื่อ , ตำแหน่ง , เงินเดือน , รหัสหัวหน้า)
164
ความสัมพันธ์แบบ Many-to-Many
ขั้นที่ 3 การแปลงความสัมพันธ์(Relationship) ความสัมพันธ์แบบ Many-to-Many แปลงแต่ละเอนทิตี้ที่มีความสัมพันธ์กันแบบ M:N สร้างรีเลชันใหม่ที่เกิดจากความสัมพันธ์ M:N กุญแจหลักของรีเลชันใหม่เกิดจากการนำกุญแจหลักของแต่ละรีเลชันของเอนทิตี้ที่สัมพันธ์กันแบบ M:N รวมกันเป็นกุญแจหลักของรีเลชันใหม่ กุญแจหลักแต่ละอันของแต่ละรีเลชัน ถือเป็นกุญแจนอกที่เชื่อมโยงไปยังแต่ละรีเลชัน
165
ความสัมพันธ์แบบ Many-to-Many
ขั้นที่ 3 การแปลงความสัมพันธ์(Relationship) ความสัมพันธ์แบบ Many-to-Many r1 b1 a1 M N A R B a2 b2 A(a1 , a2) B(b1 , b2) Foreign key Foreign key R(a1 , b1 , r1) Primary key
166
ความสัมพันธ์แบบ Many-to-Many
ขั้นที่ 3 การแปลงความสัมพันธ์(Relationship) ความสัมพันธ์แบบ Many-to-Many เทอม ปี รหัสวิชา รหัสนศ. M N ลงทะเบียน วิชา นักศึกษา ชื่อนศ. ชื่อวิชา หน่วยกิต นักศึกษา(รหัสนศ. , ชื่อนศ.) วิชา(รหัสวิชา , ชื่อวิชา , หน่วยกิต) การลงทะเบียน(รหัสนศ. , รหัสวิชา , เทอม , ปี)
167
ความสัมพันธ์แบบ Many-to-Many
ขั้นที่ 3 การแปลงความสัมพันธ์(Relationship) ความสัมพันธ์แบบ Many-to-Many หน่วยกิต รหัสวิชา วิชาเรียน คำอธิบายรายวิชา ชื่อวิชา N M วิชาที่จะเรียน วิชาที่ต้องเรียนก่อน บังคับเรียน วิชาเรียน(รหัสวิชา , ชื่อวิชา , คำอธิบายรายวิชา , หน่วยกิต) วิชาบังคับ(รหัสวิชา , รหัสวิชาบังคับ)
168
ความสัมพันธ์แบบ One-to-One
ขั้นที่ 3 การแปลงความสัมพันธ์(Relationship) ความสัมพันธ์แบบ One-to-One r1 b1 a1 1 1 A R B a2 b2 แบบที่ 1 A(a1 , a2) และ B(b1 , b2 , a1 , r1) แบบที่ 2 A(a1 , a2 , b1 , r1) และ B(b1 , b2)
169
ความสัมพันธ์แบบ One-to-One
ขั้นที่ 3 การแปลงความสัมพันธ์(Relationship) ความสัมพันธ์แบบ One-to-One r1 b1 a1 1 1 A R B a2 b2 แบบที่ 1 A(a1 , a2) และ B(b1 , b2 , a1 , r1) แบบที่ 2 A(a1 , a2 , b1 , r1) และ B(b1 , b2)
170
ความสัมพันธ์แบบ One-to-One
ขั้นที่ 3 การแปลงความสัมพันธ์(Relationship) ความสัมพันธ์แบบ One-to-One r1 b1 a1 1 1 A R B a2 b2 B(b1 , b2 , a1 , r1) A(a1 , a2)
171
ความสัมพันธ์แบบ One-to-One
ขั้นที่ 3 การแปลงความสัมพันธ์(Relationship) ความสัมพันธ์แบบ One-to-One วันที่รับ ตน. รหัสแผนก รหัสพนักงาน 1 1 พนักงาน บริหาร แผนก ชื่อ ชื่อแผนก พนักงาน(รหัสพนักงาน , ชื่อ) แผนก(รหัสแผนก , ชื่อแผนก , รหัสพนักงาน , วันที่รับตน.)
172
ตัวอย่างการแปลง ER Diagram เป็น Relational schema
173
สำนักงาน ตัวแทน ลูกค้า เจ้าของบ้าน บ้าน การเข้าชม
โทรศัพท์ ชื่อ ชื่อผู้จัดการ ที่อยู่ ชื่อตัวแทน โทรศัพท์ โทรสาร รหัสสำนักงาน รหัสตัวแทน โทรศัพท์ รหัสลูกค้า ที่อยู่ 1 ทำงาน ประจำ สำนักงาน N ตัวแทน ลูกค้า 1 เก็บรายการ 1 นามสกุล คอมมิสชัน ชื่อ ราคาขาย เข้าชม N รหัสบ้าน ฝากขาย เจ้าของบ้าน 1 N บ้าน จน.ห้องนอน N พื้นที่ ที่ตั้ง บ้านเลขที่ จน.ห้องน้ำ รหัสประจำตัว โทรศัพท์ การเข้าชม ถนน จังหวัด 1 ตำบล อำเภอ รหัสไปรษณีย์ N เข้าชมบ้าน ความคิดเห็น วันที่
174
สำนักงาน (รหัสสำนักงาน , ชื่อผู้จัดการ ,โทรศัพท์ , โทรสาร , ที่อยู่) ตัวแทน (รหัสตัวแทน , ชื่อตัวแทน ,โทรศัพท์ , รหัสสำนักงาน) เจ้าของบ้าน (รหัสประจำตัว , ชื่อ , นามสกุล , โทรศัพท์) บ้าน (รหัสบ้าน , จน.ห้องนอน , พื้นที่ , ราคาขาย , คอมมิสชัน , จน.ห้องน้ำ , บ้านเลขที่ , ถนน , ตำบล , อำเภอ , จังหวัด , รหัสไปรษณีย์ , รหัสเจ้าของบ้าน , รหัสตัวแทน) ลูกค้า (รหัสลูกค้า , ชื่อ , ที่อยู่ , โทรศัพท์) การเข้าชม (รหัสลูกค้า , วันที่ , ความคิดเห็น , รหัสบ้าน)
175
ใบสั่งซื้อ ผู้ผลิต สินค้า ใบเสร็จ ลูกค้า พนักงาน แผนก
สั่งซื้อกับ N ใบสั่งซื้อ รหัสผู้ผลิต ผู้ผลิต ชื่อบริษัท เบอร์โทรศัพท์ อีเมลล์ ที่อยู่ บ้านเลขที่ ถนน อำเภอ จังหวัด รหัสไปรษณีย์ 1 หมายเลขใบสั่งซื้อ วันที่สั่งซื้อ ยอดรวมทั้งหมด มีรายการสั่งซื้อ M สินค้า ชื่อสินค้า ราคา จำนวนคงเหลือ ระดับคงสต๊อก รหัสสินค้า มีรายการซื้อ จำนวนที่สั่งซื้อ ใบเสร็จ วันที่ออกใบเสร็จ หมายเลขใบเสร็จ จำนวนที่ซื้อ ลูกค้า ชื่อลูกค้า คำนำชื่อ ชื่อ นามสกุล เบอร์บ้าน เบอร์มือถือ รหัสลูกค้า ได้รับ พนักงาน รหัสพนักงาน ชื่อพนักงาน ตำแหน่งงาน เงินเดือน วันเกิด อายุ แผนก ออกโดย สังกัด บริหาร วันที่รับตำแหน่ง ดูแล หัวหน้า ลูกทีม รหัสแผนก ชื่อแผนก โทรศัพท์
176
F f1 f3 f2 b1 b2 a1 A B a2 e1 e2 r3 r2 E d1 d2 D C d3 c1 c2 N R5 1 1
177
ความเหมือนและความต่าง
รหัสสินค้า หมายเลขใบสั่งซื้อ จำนวน M N สินค้า มีรายการ ใบสั่งซื้อ รหัสสินค้า หมายเลขใบสั่งซื้อ จำนวน 1 N N 1 สินค้า อยู่ใน รายการสั่งซื้อ มี ใบสั่งซื้อ รหัสสินค้า หมายเลขใบสั่งซื้อ ลำดับรายการ จำนวน สินค้า 1 N N 1 อยู่ใน รายการสั่งซื้อ มี ใบสั่งซื้อ รหัสสินค้า หมายเลขใบสั่งซื้อ ลำดับรายการ จำนวน 1 N N 1 สินค้า อยู่ใน รายการสั่งซื้อ มี ใบสั่งซื้อ
178
สินค้า ใบสั่งซื้อ รหัสสินค้า หมายเลขใบสั่งซื้อ จำนวน มีรายการ P1 P2 P3
M N สินค้า มีรายการ ใบสั่งซื้อ รหัสสินค้า P1 P2 P3 รหัสสินค้า หมายเลขใบสั่งซื้อ จำนวน P1 001 5 P2 10 002 P3 หมายเลขใบสั่งซื้อ 001 002 003
179
สินค้า รายการสั่งซื้อ ใบสั่งซื้อ
รหัสสินค้า หมายเลขใบสั่งซื้อ จำนวน สินค้า 1 N N 1 อยู่ใน รายการสั่งซื้อ มี ใบสั่งซื้อ รหัสสินค้า P1 P2 P3 รหัสสินค้า หมายเลขใบสั่งซื้อ จำนวน P1 001 5 P2 10 002 P3 หมายเลขใบสั่งซื้อ 001 002 003
180
สินค้า รายการสั่งซื้อ ใบสั่งซื้อ
รหัสสินค้า หมายเลขใบสั่งซื้อ ลำดับรายการ จำนวน สินค้า 1 N N 1 อยู่ใน รายการสั่งซื้อ มี ใบสั่งซื้อ รหัสสินค้า P1 P2 P3 หมายเลขใบสั่งซื้อ ลำดับรายการ รหัสสินค้า จำนวน 001 1 P1 5 2 P2 10 002 P3 หมายเลขใบสั่งซื้อ 001 002 003
181
สินค้า รายการสั่งซื้อ ใบสั่งซื้อ
รหัสสินค้า หมายเลขใบสั่งซื้อ ลำดับรายการ จำนวน สินค้า 1 N N 1 อยู่ใน รายการสั่งซื้อ มี ใบสั่งซื้อ รหัสสินค้า P1 P2 P3 ลำดับรายการ หมายเลขใบสั่งซื้อ รหัสสินค้า จำนวน 1 001 P1 5 2 P2 10 3 002 4 P3 หมายเลขใบสั่งซื้อ 001 002 003
182
พจนานุกรมข้อมูล(Data Dictionary)
Table name Attribute name Description Data Type Size Key References BookType (ประเภทหนังสือ) BTypeID รหัสประเภท Char 5 PK BTypeName ชื่อประเภท Varchar 30 Book (หนังสือ) ISBN รหัสISBN 15 BName ชื่อหนังสือ 50 Price ราคา Float Edition ครั้งที่พิมพ์ Int Published ปีที่พิมพ์ Picture รูปภาพ Blob BookTypeID FK
183
พจนานุกรมข้อมูล(Data Dictionary)
Table name Attribute name Description Data Type Size Key References Publisher (สำนักพิมพ์) PubID รหัสสำนักพิมพ์ Char 5 PK PubName ชื่อสำนักพิมพ์ Varchar 30 Pub อีเมลล์สำนักพิมพ์ 50 PubWeb เว็บไซต์สำนักพิมพ์ PubAddr ที่อยู่สำนักพิมพ์ 60 Author (ผู้แต่ง) AuID รหัผู้แต่ง 3 AuName ชื่อผู้แต่ง 40 Au อีเมลล์ผู้แต่ง
184
พจนานุกรมข้อมูล(Data Dictionary)
Table name Attribute name Description Data Type Size Key References Customer (ลูกค้า) CID รหัสลูกค้า Char 5 PK CName ชื่อลูกค้า Varchar 30 C อีเมลล์ลูกค้า 50 CUser ชื่อผู้ใช้ระบบ 12 CPwd รหัสผ่าน CPhone โทรศัพท์ 10 CAddr บ้านเลขที่ 40 CStreet ถนน CTumbon ตำบล CAmpher อำเภอ CProvince จังหวัด 7 CZipcode รหัสไปรษณีย์ Int
185
พจนานุกรมข้อมูล(Data Dictionary)
Table name Attribute name Description Data Type Size Key References Orders (การสั่งซื้อ) OID รหัสการสั่งซื้อ Char 10 PK ODate วันที่พิมพ์ Date CSend วันที่สั่ง CID รหัสลูกค้า char 5 FK Customer Order_Detail (รายการสั่งซื้อ) PK,FK ISBN รหัสหนังสือ 15 Book Qty จำนวนเงิน Int Sum ราคารวม Float Author_Book ผู้แต่งหนังสือ) รหัสISBN AuID รหัสผู้แต่ง 3 Author
งานนำเสนอที่คล้ายกัน
© 2024 SlidePlayer.in.th Inc.
All rights reserved.