Week 5 Online available at

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
Datadictionary Prakan Sringam.
Advertisements

พิชิตโครงงานวิทยาศาสตร์ คณะวิทยาศาสตร์ มหาวิทยาลัยมหิดล
11. การแปลงโมเดลแบบ E-R เป็นรูปแบบเชิงสัมพันธ์
ภาควิชาวิทยาการคอมพิวเตอร์ มหาวิทยาลัยสงขลานครินทร์
HO Session 14: Database Design Principles
Microsoft Access อ.เล็กฤทัย ขันทองชัย Microsoft Access.
เทคโนโลยีฐานข้อมูลสำนักงาน
วิชา องค์ประกอบศิลป์สำหรับคอมพิวเตอร์ รหัส
E-R Model บรรยายโดย สุรางคนา ธรรมลิขิต.
วงจรพัฒนาระบบ (System Development Life Cycle)
แผนการสอน วิชา Database Design and Development
การใช้งานโปรแกรม Excel เบื้องต้น
กิตติพงศ์ เซ่งลอยเลื่อน (ดอน)
อ.กิตติพงศ์ เซ่งลอยเลื่อน อาจารย์พิเศษ มหาวิทยาลัยแม่โจ้
สถาปัตยกรรมฐานข้อมูล
Security and Integrity
Entity-Relationship Model
การจัดเก็บข้อมูลตามตัวบ่งชี้ สกอ. และ สมศ.
ฐานข้อมูลเชิงสัมพันธ์
Use Case Diagram.
การบริหารจัดการภาครัฐ (PMQA: Public Sector Management Quality Award)
ฐานข้อมูลและการออกแบบฐานข้อมูล
C Programming Lecture no. 6: Function.
บรรยายโดย สุรางคนา ธรรมลิขิต
Databases Design Methodology
– Web Programming and Web Database
บทที่ 3 แบบจำลองข้อมูล Data Models Calculus
การออกแบบระบบและประยุกต์ใช้ฐานข้อมูล
การออกแบบแบบจำลองข้อมูล
การแปลงโมเดลข้อมูลแบบ E-R เป็นโมเดลฐานข้อมูลเชิงสัมพันธ์
การเขียนโปรแกรมเชิงวัตถุ ด้วยภาษาจาวา
Chapter 2 Database systems Architecture
สถาปัตยกรรมของระบบฐานข้อมูล
การออกแบบฐานข้อมูลเชิงสัมพันธ์
อ.อารียา ศรีประเสริฐ สาขาวิชาเทคโนโลยีสารสนเทศธุรกิจ
ฐานข้อมูลเชิงสัมพันธ์
บูรณภาพของข้อมูล ลัชนา อินชัยวงศ์.
แบบจำลองความสัมพันธ์ระหว่างข้อมูล
รูปแบบที่เป็นบรรทัดฐาน
หลักการวิเคราะห์และออกแบบระบบฐานข้อมูล
หลักการวิเคราะห์และออกแบบระบบฐานข้อมูล
รายวิชา ระบบฐานข้อมูล 1 หลักการวิเคราะห์และออกแบบระบบฐานข้อมูล
ทักษะการตัดสินใจ นัทธี จิตสว่าง 28 มีนาคม 2553.
บทที่ 3 การวิเคราะห์ Analysis.
Data Modeling Chapter 6.
การออกแบบระบบฐานข้อมูล
บทนำเกี่ยวกับระบบฐานข้อมูล
ฐานข้อมูลเชิงสัมพันธ์ (Relational Database)
(การลดความซ้ำซ้อนของข้อมูล)
โปรแกรม Microsoft Access
โมเดลจำลองความสัมพันธ์ระหว่างข้อมูล (ER-Diagram)
1. รายการเปลี่ยนแปลง (Transaction)
1. ศัพท์พื้นฐานของฐานข้อมูล
การออกแบบระบบฐานข้อมูล
เรื่องการประยุกต์ของสมการเชิงเส้นตัวแปรเดียว
เพื่อการเข้าสู่ตำแหน่งทางวิชาการ รองศาสตราจารย์ ดร.พันธ์ ทองชุมนุม
เรื่องการประยุกต์ของสมการเชิงเส้นตัวแปรเดียว
Entity-Relationship Model
โมเดลเชิงสัมพันธ์ The relational model.
งานกลุ่ม กลุ่มที่ 3 เรื่อง ฐานข้อมูลเชิงสัมพันธ์
E-R to Relational Mapping Algorithm
Enhanced Entity-Relationship Modeling
แบบจำลองข้อมูล (Data Model)
Introduction to Database
โครงสร้างข้อมูลแบบ สแตก (stack)
Chapter 6 : แบบจำลอง E-R (Entity-Relationship Model)
บทที่ 5 การควบคุมความถูกต้องให้กับข้อมูล (Data Integrity)
การออกแบบฐานข้อมูล.
สรุปขั้นตอนการสร้าง E-R Diagram
ใบสำเนางานนำเสนอ:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

การแปลง 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

การแปลง 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