งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

Week 5 Online available at

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "Week 5 Online available at"— ใบสำเนางานนำเสนอ:

1 Week 5 Online available at http://www.ict.pyo.nu.ac.th/somporns/db
Database Design Week 5 Online available at

2 Contents แบบแผนการออกแบบฐานข้อมูล
การออกแบบฐานข้อมูลในระดับแนวคิด การออกแบบฐานข้อมูลในระดับตรรกะ การออกแบบฐานข้อมูลในระดับกายภาพ CASE Tools (Computer-Aided Software Engineering) กฎความคงสภาพของข้อมูล (Data Integrity Rule) กฎความคงสภาพของเอนทิตี้ โดเมน และการอ้างอิง การแปลงรูป ER-Diagram ไปเป็นรีเลชัน

3 แบบแผนการออกแบบฐานข้อมูล
ขั้นตอนหลักในการออกแบบฐานข้อมูล มี 3 ระดับดังนี้ การออกแบบฐานข้อมูลในระดับแนวคิด (Conceptual Database Design) การออกแบบฐานข้อมูลในระดับตรรกะ (Logical Database Design) การออกแบบฐานข้อมูลในระดับกายภาพ (Physical Database Design)

4 การออกแบบฐานข้อมูลในระดับแนวคิด (Conceptual Database Design)
การออกแบบฐานข้อมูลในระดับนี้ เกี่ยวข้องกับการกำหนดเค้าโครงหรือสคีมาในระดับเบื้องต้น เป็นเพียงแนวคิดยังไม่สามารถนำไปใช้งานได้จริง ผลลัพธ์ที่ได้จากกการออกแบบในระดับนี้ คือ ชนิดของเอนทิตี้ ชนิดของความสัมพันธ์ แอทริบิวต์ แอทริบิวต์ของโดเมน คีย์คู่แข่ง คีย์หลัก ER-Diagram

5 การออกแบบฐานข้อมูลในระดับตรรกะ (Logical Database Design)
เป็นกระบวนการสร้างแบบจำลองให้มีความชัดเจนยิ่งขึ้น โดยการออกแบบในขั้นตอนนี้เกี่ยวข้องกับ แปลงแบบจำลองในระดับแนวคิดเป็นแบบจำลองในระดับตรรกะ ใช้เทคนิคการออกแบบรีเลชันด้วยการ normalization ตรวจสอบโมเดลร่วมกับผู้ใช้ ว่าครอบคลุมและสนับสนุนการทำงานครบถ้วนหรือไม่ (ในขั้นตอนนี้จะทำการตรวจสอบและแก้ไขจนกว่าจะได้โมเดลที่ตรงกับความต้องการของผู้ใช้) ER-Diagram

6 การออกแบบฐานข้อมูลในระดับกายภาพ (Physical Database Design)
เป็นขั้นตอนที่จะพัฒนาฐานข้อมูลเพื่อใช้งานจริง พิจารณาแหล่งจัดเก็บข้อมูล โครงสร้างข้อมูล เลือก DBMS ที่จะมาใช้งาน

7 CASE Tools เป็นเครื่องมือที่ใช้ในการออกแบบฐานข้อมูล โดยจะช่วยออกแบบฐานข้อมูลในระดับตรรกะแล้วแปลงให้อยู่ในระดับกายภาพ ซึ่งมีหลายโปรแกรมให้เลือกใช้งาน เช่น Visible Analyst Erwin Visio Rational Rose Designer-2000

8 กฎความคงสภาพของข้อมูล (Data Integrity Rule)
คือ การควบคุมความถูกต้องของข้อมูลเพื่อให้ข้อมูลในฐานข้อมูลนั้นมีความถูกต้องตรงกัน ป้องกันไม่ให้เกิดข้อผิดพลาดในข้อมูลที่บันทึกอยู่ในฐานข้อมูล ซึ่งข้อผิดพลาดนั้นอาจเกิดจากการเพิ่ม การลบ และการเปลี่ยนแปลงข้อมูล กฎความคงสภาพของข้อมูลมี 3 กฎเกณฑ์หลักๆ คือ กฎความคงสภาพของเอนทิตี้ กฎความคงสภาพของโดเมน กฎความคงสภาพของการอ้างอิง

9 กฎความคงสภาพของข้อมูล (Data Integrity Rule)
กฎความคงสภาพของเอนทิตี้ แอทริบิวต์ที่เป็นคีย์หลักจะไม่เป็นค่าว่าง (Not null) กฎความคงสภาพของโดเมน เป็นกฎที่ใช้ควบคุมค่าของข้อมูลให้มีค่าที่เหมะสม เช่น เกรดเฉลี่ย จะต้องมีค่าระหว่าง 0.00 – 4.00 การพัฒนาฐานข้อมูลก็ต้องสามารถตรวจสอบให้การป้อนค่าดังกล่าวต้องไม่ติดลบ และมีค่าไม่เกิน 4.00 เป็นต้น กฎความคงสภาพของการอ้างอิง เป็นการกำหนดสำหรับรีเลชันที่มีคีย์นอก (Foreign Key: FK) ที่อ้างอิงไปที่คีย์หลัก (Primary Key: PK) ในอีกรีเลชัน

10 กฎความคงสภาพของข้อมูล (Data Integrity Rule)
กฎความคงสภาพของการอ้างอิง ซึ่งมีความเป็นไปได้ในการอ้างอิง คือ Restricted ไม่อนุญาตให้มีการแก้ไขข้อมูลที่เป็นคีย์ ถ้าคีย์นั้นยังมีการอ้างอิงหรือใช้งานจากรีเลชันอื่นอยู่ Cascased อนุญาตให้มีการแก้ไขข้อมูลที่เป็นคีย์หลักได้ โดยจะทำการแก้ไขคีย์นอกที่อยู่ในรีเลชันอื่นด้วย Nullify อนุญาตให้มีการแก้ไขข้อมูลที่เป็นคีย์หลักได้ โดยจะทำการแก้ไขคีย์นอกที่อยู่ในรีเลชันอื่นด้วยการใส่ค่าเป็น Null

11 การแปลง ER-Diagram เป็นรีเลชัน
ในความเป็นจริงการแปลง ER-Diagram เป็นรีเลชันนั้นเครื่องมือ CASE Tools หลายตัวสามารถทำได้ แต่เพื่อให้เข้าในกระบวนการดังกล่าว และถือว่าเป็นสิ่งสำคัญที่ต้องเรียนรู้ ในหัวข้อนี้จึงจะกล่าวถึงขั้นตอนและวิธีการในการแปลงรูป ER-Diagram

12 การแปลง ER-Diagram เป็นรีเลชัน
ชื่อเอนทิตี้ เป็น ชื่อรีเลชัน แอทริบิวต์ของเอนทิตี้ เป็น แอทริบิวต์ของรีเลชัน Composite Attribute ของเอนทิตี้ จะถูกแยกเป็น Simple Attribute ของรีเลชัน Multivalued Attribute ของเอนทิตี้ จะถูกแยกมาเป็นรีเลชันใหม่ โดยประกอบไปด้วยคีย์ของเอนทิตี้และ Multivalued Attribute

13 การแปลง ER-Diagram เป็นรีเลชัน
Employee EmpID EmpName EmpAddress State City Street Zipcode Skill

14 การแปลง ER-Diagram เป็นรีเลชัน
Employee (EmpID, EmpName, Street, City, State, Zipcode) EmpSkill (EmpID, Skill) การเขียนจะใช้ตัวพิมพ์ใหญ่หรือเล็กก็ได้

15 การแปลง ER-Diagram เป็นรีเลชัน
กรณีที่ความสัมพันธ์ระหว่างเอนทิตี้เป็นแบบ หนึ่งต่อหนึ่ง ก็ฝากคีย์ไปไว้อีกรีเลชันหนึ่ง ซึ่งจะเป็นรีเลชันฝั่งใดก็ได้ DepName EmpName DepID EmpID Manage Employee Department 1 1

16 การแปลง ER-Diagram เป็นรีเลชัน
Employee (EmpID, EmpName) Department (DepID, DepName, MgrID) การเขียนจะใช้ตัวพิมพ์ใหญ่หรือเล็กก็ได้

17 การแปลง ER-Diagram เป็นรีเลชัน
กรณีที่ความสัมพันธ์ระหว่างเอนทิตี้เป็นแบบ หนึ่งต่อกลุ่มให้นำ PK ของฝั่งหนึ่งไปไว้ฝั่งกลุ่ม DepName EmpName DepID EmpID Works For Employee Department M 1

18 การแปลง ER-Diagram เป็นรีเลชัน
Employee (EmpID, EmpName, DepID) Department (DepID, DepName) การเขียนจะใช้ตัวพิมพ์ใหญ่หรือเล็กก็ได้

19 การแปลง ER-Diagram เป็นรีเลชัน
กรณีที่ความสัมพันธ์ระหว่างเอนทิตี้เป็นแบบ กลุ่มต่อกลุ่มให้สร้างรีเลชันใหม่โดยจะมี PK ของทั้งสองฝั่งเป็นแอทริบิวต์ในรีเลชัน และถ้าใน ER-Diagram มีแอทริบิวต์ที่อยู่บนรีเลชัน แอทริบิวต์นั้นก็จะกลายเป็นแอทริบิวต์ของรีเลชันใหม่ที่สร้างมาด้วย

20 การแปลง ER-Diagram เป็นรีเลชัน
กรณีที่ความสัมพันธ์ระหว่างเอนทิตี้เป็นแบบ กลุ่มต่อกลุ่ม Quantity UnitPrice OrderDate ProdID OrderID Requests Order Product M M 20

21 การแปลง ER-Diagram เป็นรีเลชัน
Order (OrderID, OrderDate) Product (ProdID, UnitPrice) OrderProduct (OrderID, ProdId, Quantity) การเขียนจะใช้ตัวพิมพ์ใหญ่หรือเล็กก็ได้

22 การแปลง ER-Diagram เป็นรีเลชัน
กรณีที่ความสัมพันธ์ระหว่างเอนทิตี้เป็นแบบ Unary แบบ หนึ่งต่อกลุ่ม EmpName Employee (EmpID, EmpName, MgrID) EmpID Manages Employee 1 M

23 การแปลง ER-Diagram เป็นรีเลชัน
กรณีที่ความสัมพันธ์ระหว่างเอนทิตี้เป็นแบบ Unary แบบ กลุ่มต่อกลุ่ม Name Item (ItemID, Name) Component (ItemID, ComponentID, Quantity) ItemID Quantity Contains Item M N

24 การแปลง ER-Diagram เป็นรีเลชัน
กรณีที่ความสัมพันธ์ระหว่างเอนทิตี้เป็นแบบ Ternary ให้สร้างรีเลชันใหม่โดยจะมี PK ของเอนทิตี้ที่เป็นฝั่งหนึ่งมาเป็นแอทริบิวต์ในรีเลชัน และถ้าใน ER-Diagram มีแอทริบิวต์ที่อยู่บนรีเลชัน แอทริบิวต์นั้นก็จะกลายเป็นแอทริบิวต์ของรีเลชันใหม่ที่สร้างมาด้วย 24

25 การแปลง ER-Diagram เป็นรีเลชัน
กรณีที่ความสัมพันธ์ระหว่างเอนทิตี้เป็นแบบ Ternary Patient PatientID Name PatientTreat M Physician PhysicianID Treatment Treatmentcode Desc 1 Result Date Time 25

26 การแปลง ER-Diagram เป็นรีเลชัน
กรณีที่ความสัมพันธ์ระหว่างเอนทิตี้เป็นแบบ Ternary Patient (patientid, name) Physician (physicianid, name) Treatment (treatmentcode, desc) PatientTreat (patientid, physicianid, treatmentcode, date, time, result) การเขียนจะใช้ตัวพิมพ์ใหญ่หรือเล็กก็ได้ 26

27 การแปลง ER-Diagram เป็นรีเลชัน
กรณีที่ความสัมพันธ์ระหว่างเอนทิตี้เป็นแบบ Supertype/Subtype ให้นำแอทริบิวต์ของเอนทิตี้ที่เป็น supertype มาเป็นแอทริบิวต์ของเอนทิตี้ของ subtype 27

28 การแปลง ER-Diagram เป็นรีเลชัน
กรณีที่ความสัมพันธ์ระหว่างเอนทิตี้เป็นแบบ Supertype/Subtype EmpName Address EmpID DateHire Employee HourlyRate Emp_Type = ContractNo “H” d “C” “S” Hourly Employee Salaried Employee Consultant AnnualSalary StockOption BillingRate 28

29 การแปลง ER-Diagram เป็นรีเลชัน
กรณีที่ความสัมพันธ์ระหว่างเอนทิตี้เป็นแบบ Supertype/Subtype Employee (EmpID, Empname, Address, DateHire) HourlyEmployee (EmpID, Empname, Address, DateHire, HourlyRate) SalariedEmployee (EmpID, Empname, Address, DateHire, AnnualSalary, StockOption) Consultant (EmpID, Empname, Address, DateHire, ContractNo, BillingRate) 29


ดาวน์โหลด ppt Week 5 Online available at

งานนำเสนอที่คล้ายกัน


Ads by Google