E-R to Relational Mapping Algorithm

Slides:



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

BC421 File and Database Lab
ความหมายของไปรษณีย์อิเล็กทรอนิกส์ ( )
11. การแปลงโมเดลแบบ E-R เป็นรูปแบบเชิงสัมพันธ์
ภาควิชาวิทยาการคอมพิวเตอร์ มหาวิทยาลัยสงขลานครินทร์
HO Session 14: Database Design Principles
ความรู้เบื้องต้นเกี่ยวกับระบบฐาจข้อมูล
กาจัดการข้อมูลพาณิชย์อิเล็กทรอนิกส์
12. การบันทึกข้อมูลลงในตาราง
จัดการฐานข้อมูลด้วย Microsoft Access 2007
E-R Model บรรยายโดย สุรางคนา ธรรมลิขิต.
The Management of Distributed Transaction
ก่อนเข้าสู่ระบบสมาชิก • ไม่แสดงรายละเอียดของสมาชิก • ไม่สามารถใช้บริการ • ไม่สามารถใช้บริการ • ไม่สามารถร่วมสนุกกับกิจกรรมพิเศษ.
แผนการสอน วิชา Database Design and Development
อ.กิตติพงศ์ เซ่งลอยเลื่อน อาจารย์พิเศษ มหาวิทยาลัยแม่โจ้
บทที่ 2 รูปแบบของฐานข้อมูล.
สถาปัตยกรรมฐานข้อมูล
Security and Integrity
Entity-Relationship Model
ความรู้ทั่วไปเกี่ยวกับโปรแกรม Microsoft Office Access 2003
Normalization.
ฐานข้อมูลเชิงสัมพันธ์
ฐานข้อมูลและการออกแบบฐานข้อมูล
ระบบการจัดส่งสินค้า (Shipping system)
– Web Programming and Web Database
บทที่ 3 แบบจำลองข้อมูล Data Models Calculus
การออกแบบแบบจำลองข้อมูล
บทที่ 7 การบัญชีเกี่ยวกับการจัดซื้อ และการควบคุมสินค้าคงเหลือ
Chapter 2 Database systems Architecture
คลาสและวัตถุ (4) (Class & Object)
สถาปัตยกรรมของระบบฐานข้อมูล
การออกแบบฐานข้อมูลเชิงสัมพันธ์
Information Technology Project Management
อ.อารียา ศรีประเสริฐ สาขาวิชาเทคโนโลยีสารสนเทศธุรกิจ
ฐานข้อมูลเชิงสัมพันธ์
ความรู้เบื้องต้นเกี่ยวกับระบบฐานข้อมูล
แบบจำลองความสัมพันธ์ระหว่างข้อมูล
การแปลง E-R เป็น Table.
ระบบสารสนเทศเพื่อการขายสินค้า ผ่านเครือข่ายอินเทอร์เน็ต
หลักการวิเคราะห์และออกแบบระบบฐานข้อมูล
รายวิชา ระบบฐานข้อมูล 1 หลักการวิเคราะห์และออกแบบระบบฐานข้อมูล
Entity Relationship Model
The Relational Data Model
เรื่องข้อมูลและสาระสนเทศ
บทที่ 3 การวิเคราะห์ Analysis.
Data Modeling Chapter 6.
การออกแบบระบบฐานข้อมูล
Linked List (ลิงค์ลิสต์)
System Analysis and Design
บทนำเกี่ยวกับระบบฐานข้อมูล
ฐานข้อมูลเชิงสัมพันธ์ (Relational Database)
1. การศึกษาและการวิเคราะห์ความต้องการของผู้ใช้
โมเดลจำลองความสัมพันธ์ระหว่างข้อมูล (ER-Diagram)
1. รายการเปลี่ยนแปลง (Transaction)
1. ศัพท์พื้นฐานของฐานข้อมูล
การออกแบบระบบฐานข้อมูล
การประยุกต์ใช้ฐานข้อมูล
Entity-Relationship Model
โมเดลเชิงสัมพันธ์ The relational model.
งานกลุ่ม กลุ่มที่ 3 เรื่อง ฐานข้อมูลเชิงสัมพันธ์
MS Access (basic) By Kanok Khamhun. ฐานข้อมูล (Database) Database ( ฐานข้อมูล ) คือที่ เก็บรวบรวมข้อมูลที่มี ความสัมพันธ์ไว้ด้วยกัน ขึ้นอยู่ กับวัตถุประสงค์ของการเก็บ.
Week 5 Online available at
ส่วนประกอบของแบบจำลองอีอาร์
Enhanced Entity-Relationship Modeling
จากรูป ถามถึง Foreign key ของใบจัดสินค้า หากใครเลือกตอบ ในวงกลมสีเขียว ได้คะแนน นอกนั้น หักคะแนน  ส่วนเลขที่ใบ นั้น ถือเป็น.
ผลที่ได้จากการสอบสวน 1. เกิดเหตุการณ์อะไรขึ้น 2. ทำไมถึงเกิดเหตุการณ์นั้น 3. ใครจะเป็นผู้ที่เหมาะสมที่สุดในการแก้ไขป้องกันอุบัติเหตุในครั้งนี้
Introduction to Database
บทที่ 5 การควบคุมความถูกต้องให้กับข้อมูล (Data Integrity)
สรุปขั้นตอนการสร้าง E-R Diagram
ฐานข้อมูลเชิงสัมพันธ์ Relational Database
ใบสำเนางานนำเสนอ:

E-R to Relational Mapping Algorithm

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

Entity Integrity กฎความคงสภาพของเอ็นติตี้ เป็นกฎที่ว่าด้วยการออกแบบเพื่อความแน่นอนของทุก ๆ รีเลชั่นที่มีคีย์หลัก โดยรับประกันว่าทุกแอตตริบิวต์ที่เป็นคีย์หลักจะต้องไม่เป็นค่าว่าง ซึ่งหากแอตตริบิวต์ ใดมีคีย์หลักเป็นค่าว่าง (Null) การอ้างอิงความเป็นเอกลักษณ์ของแอตตริบิวต์นั้นจะ ผิดกฏความคงสภาพของเอ็นติตี้ไปโดยปริยาย บางครั้งกฏความคงสภาพของเอ็นติตี้ อาจเรียกอีกชื่อหนึ่งว่า Key Integrity

Entity Integrity

Domain Integrity กฎความคงสภาพของโดเมน เป็นกฎเกณฑ์ที่ใช้เพื่อควบคุมค่าข้อมูลให้อยู่ในช่วงที่เหมาะสมและถูกต้อง เช่น เกรดเฉลี่ยสะสม (GPA) ซึ่งจะต้องมีค่าระหว่าง 0.00 ถึง 4.00 ดังนั้นในการพัฒนา ฐานข้อมูลก็จะต้องสามารถควบคุมค่าดังกล่าวได้ โดยเกรดเฉลี่ยสะสมต้องไม่เป็น ค่าติดลบ และจะมีค่าไม่เกินกว่า 4.00 ไม่ได้

Domain Integrity

Referential Integrity กฎความคงสภาพของการอ้างอิง เป็นกฎเกณฑ์ที่ว่า ถ้าหากมีรีเลชั่นหนึ่งซึ่งเป็นคีย์นอก (Foreign Key) มีการอ้างอิง กับคีย์หลัก (Primary Key) ในอีกรีเลชั่นหนึ่ง ก็จะทำให้สามารถทราบข้อมูลต่าง ๆ ใน อีกรีเลชั่นหนึ่งได้

Referential Integrity การเปลี่ยนแปลงในข้อมูลตามกฎความคงสภาพของการอ้างอิงนี้ มีความเป็นไปได้ อยู่ 3 กรณีด้วยกัน ดังนี้ Restricted เป็นกฎที่ไม่อนุญาตให้มีการแก้ไขข้อมูลที่เป็นคีย์ ถ้าคีย์ที่ต้องการ แก้ไขนั้นยังมีการอ้างอิงหรือใช้งานจากรีเลชั่นอื่น ๆ อยู่ Cascades เป็นกฎที่อนุญาตให้สามารถแก้ไขข้อมูลที่เป็นคีย์หลักได้ แต่จะทำการ แก้ไขคีย์นอกใน รีเลชั่นอื่น ๆ ที่มีการอ้างถึงคีย์หลักโดยอัตโนมัติ

Referential Integrity Cascades Example P0014 > P0089 P0014 > P0089

Referential Integrity Nullify เป็นกฎที่อนุญาตให้บันทึกค่า Null ให้กับคีย์นอกได้ เช่น ในรีเลชั่นOrder_Line เป็นรีเลชั่นการสั่งซื้อสินค้าของลูกค้า สมมติว่ามีสินค้าชิ้นหนึ่งยังไม่ได้ มีการกำหนดรหัสสินค้า เนื่องจากเป็นสินค้าชนิดใหม่ แต่กฎนี้จะอนุญาตให้ใส่ค่า Null แก่รหัสสินค้า (productID) ที่เป็นคีย์นอกได้

E-R to Relational Mapping Algorithm Strong Entity คือ entity ที่เกิดขึ้นได้ด้วยตัวเอง เป็นอิสระโดยไม่ขึ้นกับ entity ใด Weak Entity คือ entity ที่เกิดได้จาก entity หลัก ดังนั้น Weak Entity จะถูกลบ ออกไปทันทีเมื่อ entity หลักถูกลบ Associative Entity เป็นรูปแบบที่เกิดขึ้นจากความสัมพันธ์ระหว่าง entity ใน ลักษณะ M:N โดยหากเกิดความสัมพันธ์ระหว่าง entity แบบกลุ่มต่อกลุ่มแล้ว จะต้องเพิ่ม entity อีกหนึ่งตัวคั่นกลาง เพื่อใช้เก็บเหตุการณ์ของข้อมูลที่เกิดขึ้น

Step 1 : การแปลง Strong Entity การแปลง Strong Entity ชื่อ CUSTOMER มาเป็นรีเลชั่น

Step 1 : การแปลง Strong Entity การแปลง Composite Attributes มาเป็นรีเลชั่น

Step 1 : การแปลง Strong Entity การแปลง Multivalued Attributes มาเป็นรีเลชั่น

Step 2 : การแปลง Weak Entity

Step 3 : การแปลงความสัมพันธ์แบบ Binary การแปลงความสัมพันธ์แบบ 1:M (one to many) เป็นรีเลชั่น

Step 3 : การแปลงความสัมพันธ์แบบ Binary การแปลงความสัมพันธ์แบบ M:N (many to many) เป็นรีเลชั่น

Step 3 : การแปลงความสัมพันธ์แบบ Binary การแปลงความสัมพันธ์แบบ 1:1 (one to one) เป็นรีเลชั่น

Step 4 : การแปลงเอ็นติตี้ชนิด Associative กรณีไม่ได้ระบุคีย์หลัก (Primary Key)

Step 4 : การแปลงเอ็นติตี้ชนิด Associative กรณีมีการระบุคีย์หลัก (Primary Key) unitPrice

Step 5 : การแปลงความสัมพันธ์แบบ Unary ความสัมพันธ์แบบ Unary ชนิด one to many ทำการเพิ่มแอตตริบิวต์ที่ใช้เป็นคีย์นอกเข้าไป โดยค่าข้อมูลคีย์นอกก็คือค่าข้อมูลคีย์หลัก ที่ใช้เชื่อมโยงบนรีเลชั่นเดียวกัน (คีย์นอกจะต้องมีโดเมนเดียวกับคีย์หลัก)

Step 5 : การแปลงความสัมพันธ์แบบ Unary ความสัมพันธ์แบบ Unary ชนิด many to many จะต้องสร้างรีเลชั่น 2 รีเลชั่นด้วยกัน โดยรีเลชั่นแรกจะมีคีย์หลักพร้อมแอตตริบิวต์ที่เกี่ยว ข้อง ส่วนอีกรีเลชั่นหนึ่ง คือ รีเลชั่นแบบ Associative ที่ประกอบด้วย 2 แอตตริบิวต์ที่เป็น คีย์หลัก ซึ่งแอตตริบิวต์ทั้งสองก็คือค่าข้อมูลเดียวกันกับคีย์หลักในเอ็นติตี้แรก แต่จะต้อง ตั้งชื่อให้แตกต่างกัน

Step 5 : การแปลงความสัมพันธ์แบบ Unary Example : ต้องการทราบว่ามี component อะไรบ้างทีอยู่ใน item หมายเลข 100 SELECT componentNo, quantity FROM COMPONENT WHERE itemNo = 100;

Step 6 : การแปลงความสัมพันธ์แบบ Ternary (and n-ary)

Step 7 : การแปลงความสัมพันธ์แบบ Supertype / Subtype 2. แอตตริบิวต์ของ Subtype จะได้รับการถ่ายทอดจากรีเลชั่นที่เป็น Supertype รวมถึงแอตตริบิวต์ที่เป็นคีย์หลักด้วย 3. กำหนดคีย์หลักให้กับแต่ละรีเลชั่นที่เป็น Subtype โดยจะต้องมีแอตตริบิวต์ที่แตกต่างกัน เพื่อใช้ระบุความแตกต่างของแต่ละ Subtype

Step 7 : การแปลงความสัมพันธ์แบบ Supertype / Subtype EMPLOYEE