04 Relational Model [2024].pptx
Document Details
Uploaded by LucrativeZither1252
2024
Tags
Full Transcript
Relational Model Database Design & Development Asst. Prof. Satidchoke Phosaard, Ph.D. www.company.com วัตถุประสงค์ สามารถอธิบายถึงวิวัฒนาการของ แบบจำลองเชิงสัมพันธ์ สามารถอธิบายแนวคิดของแบบ จำลองเชิงสัมพันธ์ได้ สามารถอธิบายการแทนข้อมูลใน แบบจำลองเชิง...
Relational Model Database Design & Development Asst. Prof. Satidchoke Phosaard, Ph.D. www.company.com วัตถุประสงค์ สามารถอธิบายถึงวิวัฒนาการของ แบบจำลองเชิงสัมพันธ์ สามารถอธิบายแนวคิดของแบบ จำลองเชิงสัมพันธ์ได้ สามารถอธิบายการแทนข้อมูลใน แบบจำลองเชิงสัมพันธ์ได้ สามารถอธิบายการกำหนด เงื่อนไขบังคับสำหรับบูรณภาพ ของข้อมูลแบบต่างๆ ได้ สามารถสร้างแบบจำลองเชิง www.company.com คำสำคัญ กฎ 12 ข้อของ E. F. Codd (E. F. Codd’s 12 rules) รีเลชัน (relation) สคีมา (schema) และ กรณี ตัวอย่าง (instance) ทูเพิล (tuple) ฟิลด์ (field) โดเมน (domain) ดีกรี (degree) คาร์ดินัลลิตี (cardinality); เงื่อนไขบังคับบูรณภาพ (integrity constraints) www.company.com คำสำคัญ เงื่อนไขบังคับคีย์ (key constraints) คีย์ (key) คีย์หลัก (primary key) คีย์คู่แข่ง (candidate key) คีย์ประกอบ (composite key) คีย์ ภายนอก (foreign key) เงื่อนไข บังคับคีย์ภายนอก (foreign key constraints) บูรณภาพเชิงอ้างอิง (referential integrity) เงื่อนไขบังคับทั่วไป (general www.company.com หัวข้อบรรยาย แนวคิดทั่วไปเกี่ยวกับแบบ จำลองเชิงสัมพันธ์ วิวัฒนาการของแบบจำลองเชิงสัมพันธ์ กฎ 12 ข้อของ E. F. Codd ข้อดีของระบบจัดการฐานข้อมูลเชิงสัมพันธ์ คำศัพท์ที่เกี่ยวข้องกับแบบจำลองเชิง สัมพันธ์ เงื่อนไขบังคับบูรณภาพ (Integrity Constraints) เงื่อนไขบังคับคีย์ (Key Constraints) เงื่อนไขบังคับคีย์ภายนอก (Foreign Key Constraints) เงื่อนไขบังคับทั่วไป (General Constraints) www.company.com หัวข้อบรรยาย วิว View การแปลง ER Model ให้เป็นแบบจำลอง ข้อมูลเชิงสัมพันธ์ การแปลงเอนทิตีให้เป็นตาราง การแปลงความสัมพันธ์ให้เป็นตาราง ความสัมพันธ์ที่ไม่มีเงื่อนไข ความสัมพันธ์ที่มี Key Constraints ความสัมพันธ์ที่มี Participation Constraints การแปลง Weak Entity การแปลง Class Hierarchies กรณีศึกษา www.company.com หัวข้อบรรยาย แนวคิดทั่วไปเกี่ยวกับแบบ จำลองเชิงสัมพันธ์ วิวัฒนาการของแบบจำลองเชิงสัมพันธ์ กฎ 12 ข้อของ E. F. Codd ข้อดีของระบบจัดการฐานข้อมูลเชิงสัมพันธ์ คำศัพท์ที่เกี่ยวข้องกับแบบจำลองเชิง สัมพันธ์ เงื่อนไขบังคับบูรณภาพ (Integrity Constraints) เงื่อนไขบังคับคีย์ (Key Constraints) เงื่อนไขบังคับคีย์ภายนอก (Foreign Key Constraints) เงื่อนไขบังคับทั่วไป (General Constraints) www.company.com แนวคิดทั่วไปเกี่ยวกับ แบบจำลองเชิงสัมพันธ์ Relational Model แบบจำลองเชิงสัมพันธ์เป็น พื้นฐานของระบบจัดการฐาน ข้อมูลเชิงสัมพันธ์ www.company.com แนวคิดทั่วไปเกี่ยวกับ แบบจำลองเชิงสัมพันธ์ Relational Model Concept ual Design Logical Design Physical Design www.company.com หัวข้อบรรยาย แนวคิดทั่วไปเกี่ยวกับแบบ จำลองเชิงสัมพันธ์ วิวัฒนาการของแบบจำลองเชิงสัมพันธ์ กฎ 12 ข้อของ E. F. Codd ข้อดีของระบบจัดการฐานข้อมูลเชิงสัมพันธ์ คำศัพท์ที่เกี่ยวข้องกับแบบจำลองเชิง สัมพันธ์ เงื่อนไขบังคับบูรณภาพ (Integrity Constraints) เงื่อนไขบังคับคีย์ (Key Constraints) เงื่อนไขบังคับคีย์ภายนอก (Foreign Key Constraints) เงื่อนไขบังคับทั่วไป (General Constraints) www.company.com จำลองเชิง สัมพันธ์ 1970 E. F. Codd ผู้นำเสนอแบบจำลองข้อมูลเชิงสัมพันธ์ เป็นคนแรก ก่อนหน้านั้นใช้แบบจำลองข้อมูลเชิง ลำดับชั้นและแบบจำลองข้อมูลเชิงเครือ ข่าย วิวัฒนาการของแบบจำลองเชิงสัมพันธ์ www.company.com จำลองเชิง สัมพันธ์ 1970s IBM’s System R Early Relational Database Implementation การจัดการธุรกรรม การรองรับการทำงาน พร้อมกัน การใช้งานข้อคำถามที่มี โครงสร้าง การปรับปรุงประสิทธิภาพของการ แสดงข้อมูลจากข้อคำถาม ความมั่นคง ปลอดภัยของข้อมูล บูรณภาพของข้อมูลหรือ ความถูกต้องของข้อมูล และส่วนติดต่อกับ ผู้ใช้ SQL www.company.com จำลองเชิง สัมพันธ์ 1970s INGRES (Interactive Graphics Retrieval System)— University of California at Berkeley Similar to IBM’s System R www.company.com จำลองเชิง สัมพันธ์ 1970-1980 Commercial Database Present Microsoft Access, Microsoft SQL Server, Microsoft Visual FoxPro, Oracle, IBM DB/2, MySQL www.company.com หัวข้อบรรยาย แนวคิดทั่วไปเกี่ยวกับแบบ จำลองเชิงสัมพันธ์ วิวัฒนาการของแบบจำลองเชิงสัมพันธ์ กฎ 12 ข้อของ E. F. Codd ข้อดีของระบบจัดการฐานข้อมูลเชิงสัมพันธ์ คำศัพท์ที่เกี่ยวข้องกับแบบจำลองเชิง สัมพันธ์ เงื่อนไขบังคับบูรณภาพ (Integrity Constraints) เงื่อนไขบังคับคีย์ (Key Constraints) เงื่อนไขบังคับคีย์ภายนอก (Foreign Key Constraints) เงื่อนไขบังคับทั่วไป (General Constraints) www.company.com กฎ 12 ข้อของ E. F. Codd E. F. Codd’s 12 Rules กฎ 12 ข้อของ E. F. Codd คือ กฎที่บัญญัติไว้สำหรับ กำหนดให้ระบบจัดการฐาน ข้อมูลเชิงสัมพันธ์รองรับ www.company.com กฎ 12 ข้อของ E. F. Codd กฎข้อที่ 0 กฎพื้นฐาน (Foundation rule) ระบบฐานข้อมูลเชิงสัมพันธ์ ต้องมีความสามารถในจัดการ ฐานข้อมูลทั้งหมดโดยใช้ความ สามารถเชิงสัมพันธ์ กล่าว คือการจัดการข้อมูลใดๆ จะ อ้างอิงถึงทฤษฎีเชิง สัมพันธ์เท่านั้น www.company.com กฎ 12 ข้อของ E. F. Codd กฎข้อที่ 1 กฎสารสนเทศ (Information rule) ข้อมูลทั้งหมดในฐานข้อมูล เชิงสัมพันธ์จะต้องปรากฏ อยู่อย่างชัดแจ้ง เช่น ข้อมูลในฐานข้อมูลแต่ละ ระเบียนที่จะต้องปรากฏอยู่ ในตาราง ตลอดจนระบุด้วยชื่อ ของตาราง และชื่อของคอลัมน์ www.company.com และต้องจัดเก็บโดยแทนค่าแบบ กฎ 12 ข้อของ E. F. Codd กฎข้อที่ 2 กฎการรับประกันการเข้าถึง ข้อมูล (Guaranteed access rule) ข้อมูลทุกๆ ค่าที่เก็บไว้ใน ฐานข้อมูลจะต้องสามารถเข้า ถึงได้โดยการระบุชื่อตาราง คีย์หลัก และชื่อคอลัมน์ www.company.com กฎ 12 ข้อของ E. F. Codd กฎข้อที่ 3 การรองรับค่าว่าง (Systematic null value support) ระบบจัดการฐานข้อมูลต้อง รองรับค่าว่างหรือ null value โดยค่าดังกล่าวต้องแสดงว่า ข้อมูลยังคงว่างเปล่าอยู่ ต่างจากค่าโดยปริยาย เช่น ต่างจากค่า 0 และไม่ขึ้นกับ โดเมนของแอทริบิวต์ใดๆ www.company.com กฎ 12 ข้อของ E. F. Codd กฎข้อที่ 4 โครงสร้างของรีเลชันสามารถ เรียกดูได้ (Dynamic On-line Catalog Based on the Relational Model) โครงสร้างต่างๆ ของฐาน ข้อมูลที่นิยามหรือกำหนด ไว้เช่น รายการตารางต่างๆ ใน ฐานข้อมูล รายการคอลัมน์ใน ตาราง จะต้องสามารถเรียก แสดงโครงสร้างและจัดการ แก้ไขได้โดยภาษาที่ใดๆ ที่ มีโครงสร้าง ซึ่งโครงสร้าง www.company.com กฎ 12 ข้อของ E. F. Codd กฎข้อที่ 5 กฎการมีภาษาที่สนับสนุน อย่างเต็มรูปแบบ (Comprehensive data sublanguage rule) จะต้องมีภาษาอย่างน้อยหนึ่ง ภาษาที่ออกแบบมาอย่าง สมบูรณ์และสามารถจัดการฐาน ข้อมูลเชิงสัมพันธ์ได้เต็ม ความสามารถของแบบจำลอง (อาจ ไม่ใช่ SQL ก็ได้) โดยความ www.company.com สามารถที่ภาษาจะต้องรองรับ กฎ 12 ข้อของ E. F. Codd กฎข้อที่ 5 กฎการมีภาษาที่สนับสนุน อย่างเต็มรูปแบบ (Comprehensive data sublanguage rule) การนิยามข้อมูล การนิยามวิว การแก้ไขข้อมูล ได้แก่การเพิ่ม ลบ และ แก้ไข การกำหนดกฎบูรณภาพหรือกฎเพื่อคงความ ถูกต้องของข้อมูล การกำหนดสิทธิในการเข้าใช้ฐานข้อมูล www.company.com การจัดการธุรกรรม กฎ 12 ข้อของ E. F. Codd กฎข้อที่ 6 กฎการแก้ไขข้อมูลผ่านทางวิว (View updating rule) วิวทุกวิวที่อนุญาตให้แก้ไข ข้อมูลได้ จะต้องสามารถ แก้ไขข้อมูลในฐานข้อมูลผ่าน ทางวิวได้ กล่าวคือโดยปกติ วิวจะเกิดจากรีเลชันหลักใน ฐานข้อมูล โอยอาจเป็นหลายๆ รีเลชันมารวมกัน การแก้ไข ข้อมูลในวิวใดๆ ข้อมูลที่ www.company.com ได้รับการแก้ไข ข้อมูลในรี กฎ 12 ข้อของ E. F. Codd กฎข้อที่ 7 มีความสามารถในการเพิ่ม ลบ และแก้ไขข้อมูล (High-level insertion, update, and deletion) ไม่ใช่แค่การแสดงข้อมูล เท่านั้นที่ระบบจัดการฐาน ข้อมูลรองรับ ระบบจัดการฐาน ข้อมูลต้องรองรับการเพิ่ม การแก้ไขหรือปรับปรุง และ การลบข้อมูลได้ ซึ่งกฎข้อ นี้กล่าวถึงความสามารถในการ www.company.com จัดการข้อมูลทีละหลายๆ กลุ่ม กฎ 12 ข้อของ E. F. Codd กฎข้อที่ 8 มีความเป็นอิสระของข้อมูล ระดับกายภาพ (Physical data independence) โปรแกรมประยุกต์หรือโปรแกรมอื่น ใดที่ใช้งานระบบจัดการฐานข้อมูล จะต้องไม่ได้รับผลกระทบกรณีมี การปรับเปลี่ยนข้อกำหนดด้าน กายภาพ กล่าวคือโปรแกรมที่เรียก ใช้งานระบบจัดการฐานข้อมูลจะ ต้องยังคงทำงานได้ดังเดิมใน กรณีที่โครงสร้างภายในของระบบ จัดการฐานข้อมูลในระดับการจัด www.company.com เก็บข้อมูลในอุปกรณ์หน่วยความ กฎ 12 ข้อของ E. F. Codd กฎข้อที่ 9 มีความเป็นอิสระของ ข้อมูลระดับตรรกะ (Logical data independence) โปรแกรมประยุกต์หรือโปรแกรมอื่น ใดที่ใช้งานระบบจัดการฐานข้อมูล จะต้องไม่ได้รับผลกระทบกรณีมี การปรับเปลี่ยนข้อกำหนดด้าน ตรรกะ กล่าวคือโปรแกรมที่เรียก ใช้งานระบบจัดการฐานข้อมูลจะ ต้องยังคงทำงานได้ดังเดิมใน กรณีที่มีการเปลี่ยนโครงสร้าง ตารางข้อมูล อย่างไรก็ตาม หาก โครงสร้างข้อมูลที่ปรับเปลี่ยน www.company.com กฎ 12 ข้อของ E. F. Codd กฎข้อที่ 10 มีความเป็นอิสระของบูรณภาพ (Integrity independence) ภาษาฐานข้อมูลต้องรองรับการ กำหนดข้อกำหนดหรือกฎต่างๆ ที่บังคับให้ข้อมูลมีความ ถูกต้องตามข้อกำหนดทาง ธุรกิจหรือที่เรียกว่า บูรณภาพของข้อมูล ข้อกำหนด เหล่านี้ต้องถูกจัดเก็บอยู่ ในระบบจัดการฐานข้อมูลและ www.company.com กฎ 12 ข้อของ E. F. Codd กฎข้อที่ 11 มีอิสระในการกระจาย (Distribution independence) โปรแกรมประยุกต์หรือโปรแกรม อื่นใดที่ใช้งานระบบจัดการ ฐานข้อมูลจะต้องไม่ได้รับ ผลกระทบ สามารถใช้งานได้ อย่างเป็นปกติ ในกรณีที่มี การกระจายของข้อมูล ซึ่งใน ที่นี้หมายถึงการที่ข้อมูล กระจายไปอยู่ในอุปกรณ์จัด www.company.com กฎ 12 ข้อของ E. F. Codd กฎข้อที่ 12 ไม่อนุญาตให้ภาษาในระดับ ต่ำกว่าเลี่ยงกฎบูรณภาพ (Nonsubversion rule) ภาษาในระดับต่ำกว่า ในที่ นี้หมายถึงภาษาที่จัดการ ข้อมูลครั้งละข้อมูล เช่น ครั้งละระเบียน ครั้งละ คอลัมน์ในระเบียน จะต้องไม่ สามารถเลี่ยงกฎต่างๆ ที่ ตั้งไว้เพื่อบูรณภาพของ ข้อมูลได้ www.company.com หัวข้อบรรยาย แนวคิดทั่วไปเกี่ยวกับแบบ จำลองเชิงสัมพันธ์ วิวัฒนาการของแบบจำลองเชิงสัมพันธ์ กฎ 12 ข้อของ E. F. Codd ข้อดีของระบบจัดการฐานข้อมูลเชิงสัมพันธ์ คำศัพท์ที่เกี่ยวข้องกับแบบจำลองเชิง สัมพันธ์ เงื่อนไขบังคับบูรณภาพ (Integrity Constraints) เงื่อนไขบังคับคีย์ (Key Constraints) เงื่อนไขบังคับคีย์ภายนอก (Foreign Key Constraints) เงื่อนไขบังคับทั่วไป (General Constraints) www.company.com ข้อดีของฐานข้อมูล เชิงสัมพันธ์ ฐานข้อมูลเชิงสัมพันธ์เป็นรูป แบบของฐานข้อมูลซึ่งง่าย สำหรับผู้ใช้ทั่วไป โดยเฉพาะ ผู้ใช้ที่ไม่ใช่นักวิเคราะห์ และออกแบบระบบ โปรแกรมเมอร์ หรือผู้จัดการฐานข้อมูล เป็นต้น ในปัจจุบัน Relational Model ได้รับความนิยมใช้กัน มากกว่าโมเดลอื่น ๆ เนื่องจาก มีข้อดีดังนี้ www.company.com ข้อดีของฐานข้อมูล เชิงสัมพันธ์ ผลงานที่ได้จากการพัฒนาระบบ งานสูงสุด (Productivity สูงมาก) โครงสร้างข้อมูลเรียบง่าย ทำให้ง่ายต่อการใช้งานและการ เขียนโปรแกรม ภาษาที่ใช้เหมาะสม เป็นภาษา ที่เรียกว่า “relational complete language” เป็น concept ของ set theory เช่น ภาษา SQL, QBE เป็นต้น www.company.com หัวข้อบรรยาย แนวคิดทั่วไปเกี่ยวกับแบบ จำลองเชิงสัมพันธ์ วิวัฒนาการของแบบจำลองเชิงสัมพันธ์ กฎ 12 ข้อของ E. F. Codd ข้อดีของระบบจัดการฐานข้อมูลเชิงสัมพันธ์ คำศัพท์ที่เกี่ยวข้องกับแบบจำลองเชิง สัมพันธ์ เงื่อนไขบังคับบูรณภาพ (Integrity Constraints) เงื่อนไขบังคับคีย์ (Key Constraints) เงื่อนไขบังคับคีย์ภายนอก (Foreign Key Constraints) เงื่อนไขบังคับทั่วไป (General Constraints) www.company.com กับแบบจำลองเชิง สัมพันธ์ รีเลชัน (Relation) รีเลชัน คือ ตารางข้อมูลที่ ประกอบไปด้วยคอลัมน์/สดมภ์ (Columns) และแถว (Rows) www.company.com กับแบบจำลองเชิง สัมพันธ์ แอทริบิวต์ (Attribute) แอทริบิวต์ คือ คอลัมน์ของ ข้อมูลในตาราง www.company.com กับแบบจำลองเชิง สัมพันธ์ แอทริบิวต์ (Attribute) แอทริบิวต์ หรือ คอลัมน์ (column) หรือ ฟิลด์ (field) คือคุณสมบัติต่างๆ ที่อธิบายข้อมูลของเอ นทิตีหรือความสัมพันธ์ระหว่างเอนทิตี สำหรับใน ระบบฐานข้อมูลเชิงสัมพันธ์ แอทริบิวต์ปรากฏอยู่ ในรูปแบบของคอลัมน์ข้อมูลของตาราง ขอบเขตของ ค่าที่เป็นไปได้ของแอทริบิวต์เรียกว่า โดเมน (domain) การใช้งานฐานข้อมูลโดยปกติเรามีความ จำเป็นต้องกำหนดขอบเขตของข้อมูลในแต่ละแอทริ บิวต์เพื่อให้ข้อมูลมีความถูกต้อง เช่น เพศของ คนแต่ละคนมีได้ 2 ค่าคือ ชายและหญิง เราสามารถ กำหนดเงื่อนไขบังคับโดเมน (domain constraint) ในระบบจัดการฐานข้อมูล เพื่อบังคับให้ข้อมูลที่ www.company.com กับแบบจำลองเชิง สัมพันธ์ ทูเพิล (Tuple) ทูเพิล คือ แถวของข้อมูลใน ตาราง www.company.com กับแบบจำลองเชิง สัมพันธ์ ทูเพิล (Tuple) ทูเพิล หรือ แถว (row) หรือ เรคคอร์ด/ระเบียน (record) คือชุดของข้อมูล 1 ข้อมูลของรีเลชัน นั้นๆ มีลักษณะเป็นข้อมูลที่อยู่ในแถวๆ หนึ่ง ซึ่งได้แก่ข้อมูลของเอนทิตีหรือความสัมพันธ์ ระหว่างเอนทิตีนั่นเอง กลุ่มของแอทริบิวต์ ทั้งหมดเป็นแม่แบบของข้อมูลแต่ละระเบียน เราจึง เรียกกลุ่มของแอทริบิวต์ที่เป็นตัวกำหนด โครงสร้างของรีเลชันว่า สคีมา (schema) และ สำหรับข้อมูลที่เป็นไปตามโครงสร้างของสคีมาใน รีเลชันเรียกว่า กรณีตัวอย่าง (instance) ของสคีมา นั้นๆ www.company.com กับแบบจำลองเชิง สัมพันธ์ www.company.com กับแบบจำลองเชิง สัมพันธ์ คีย์หลัก (Primary Key) คีย์หลัก คือ แอทริบิวต์หรือ กลุ่มของแอทริบิวต์ที่ สามารถระบุทูเพิลได้อย่าง เฉพาะเจาะจง www.company.com กับแบบจำลองเชิง สัมพันธ์ ดีกรี (Degree) ดีกรี คือ จำนวนแอทริบิวต์ ในรีเลชัน www.company.com กับแบบจำลองเชิง สัมพันธ์ คาร์ดินัลลิตี (Cardinality) คาร์ดินัลลิตี คือ จำนวนของ แถวในรีเลชัน www.company.com กับแบบจำลองเชิง สัมพันธ์ ศัพท์เฉพาะ ศัพท์ทั่วไป รีเลชัน ตาราง (table) (relation) ทูเพิล แถว (row) หรือ (tuple) เรคคอร์ด/ระเบียน (record) แอทริบิวท์ คอลัมน์/สดมภ์ (column) หรือ (attribute) ฟิลด์ (field) คาร์ดินัลลิ จำนวนแถว (number of rows) ตี (cardinality) www.company.com ดีกรี จำนวนแอทริบิวต์ (number of หัวข้อบรรยาย แนวคิดทั่วไปเกี่ยวกับแบบ จำลองเชิงสัมพันธ์ วิวัฒนาการของแบบจำลองเชิงสัมพันธ์ กฎ 12 ข้อของ E. F. Codd ข้อดีของระบบจัดการฐานข้อมูลเชิงสัมพันธ์ คำศัพท์ที่เกี่ยวข้องกับแบบจำลองเชิง สัมพันธ์ เงื่อนไขบังคับบูรณภาพ (Integrity Constraints) เงื่อนไขบังคับคีย์ (Key Constraints) www.company.com เงื่อนไขบังคับคีย์ภายนอก (Foreign Key เงื่อนไขบังคับบูรณภาพ Integrity Constraints เงื่อนไขบังคับบูรณภาพ คือ เงื่อนไขที่กำหนดไว้ในฐาน ข้อมูลเพื่อให้ข้อมูลในฐาน ข้อมูลมีความถูกต้องตรงตาม ลักษณะการใช้งาน www.company.com หัวข้อบรรยาย แนวคิดทั่วไปเกี่ยวกับแบบ จำลองเชิงสัมพันธ์ วิวัฒนาการของแบบจำลองเชิงสัมพันธ์ กฎ 12 ข้อของ E. F. Codd ข้อดีของระบบจัดการฐานข้อมูลเชิงสัมพันธ์ คำศัพท์ที่เกี่ยวข้องกับแบบจำลองเชิง สัมพันธ์ เงื่อนไขบังคับบูรณภาพ (Integrity Constraints) เงื่อนไขบังคับคีย์ (Key Constraints) เงื่อนไขบังคับคีย์ภายนอก (Foreign Key Constraints) เงื่อนไขบังคับทั่วไป (General Constraints) www.company.com เงื่อนไขบูรณาภาพ เงื่อนไขบังคับคีย์ (Key Constraints) เงื่อนไขบังคับคีย์ คือ การ กำหนดให้แอทริบิวต์หรือ กลุ่มของแอทริบิวต์ใดเป็น คีย์ของรีเลชันสำหรับการ ระบุระเบียนใดระเบียนหนึ่ง ได้อย่างเฉพาะเจาะจง www.company.com คีย์ Simple key Simple key หรือ คีย์อย่าง ง่าย หมายถึงคีย์ที่ประกอบ ด้วยแอทริบิวต์เดียว จากตัว อย่างรีเลชันนักศึกษา รหัส นักศึกษาเป็นคีย์ของรีเลชัน ที่เป็นแอทริบิวต์เดียว เท่านั้น โดยทั่วไปแล้วคีย์ www.company.com หลักของตารางมีลักษณะเป็น คีย์ cid sid nam login a g e g p e a 3100904 B507 สมชา somchai 1 3. 022132 5666 ย @it 8 44 3100904 B507 สมศร somsri@c 1 3. 032132 5688 ี om 8 21 3100905 B507 สมศร somsri@i 1 www.company.com 3. 622132 5650 ี t 9 82 คีย์ Composite key Composite key (compound key หรือ concatenated key) หรือ คีย์ประกอบ หมายถึงคีย์ ที่ประกอบด้วย แอทริบิวต์ มากกว่า 1 แอทริบิวต์ www.company.com คีย์ Composite key {name, age} www.company.com คีย์ Candidate key Candidate key หรือ คีย์คู่ แข่งหมายถึงคีย์ที่สามารถจะ เป็นคีย์หลักของของรีเลชัน www.company.com คีย์ Candidate key {id} {cid} {name, age} {gpa} www.company.com คีย์ Primary key Primary key หรือ คีย์หลัก หมายถึงคีย์คู่แข่งตัวหนึ่ง ที่ถูกเลือกขึ้นมาเป็นคีย์ หลัก www.company.com คีย์ Candidate key {id} {cid} {name, age} {gpa} www.company.com คีย์ cid sid nam login a g e g p e a 3100904 B507 สมชา somchai 1 3. 022132 5666 ย @it 8 44 3100904 B507 สมศร somsri@c 1 3. 032132 5688 ี om 8 21 3100905 B507 สมศร somsri@i 1 www.company.com 3. 622132 5650 ี t 9 82 คีย์ Secondary key Secondary key (alternate key) หรือ คีย์รอง หมายถึง คีย์คู่แข่ง ที่ไม่ได้ถูก เลือกให้เป็นคีย์หลัก www.company.com คีย์ Superkey Superkey คือเซ็ตของแอทริบิ วต์ที่มีคีย์เป็นสมาชิก เช่น {sid, name} www.company.com คีย์ Foreign key Foreign key หรือ คีย์ภายนอก หมายถึงแอทริบิวต์ในรีเลชัน หนึ่งที่อ้างอิงมาจากคีย์ หลักของรีเลชัน www.company.com หัวข้อบรรยาย แนวคิดทั่วไปเกี่ยวกับแบบ จำลองเชิงสัมพันธ์ วิวัฒนาการของแบบจำลองเชิงสัมพันธ์ กฎ 12 ข้อของ E. F. Codd ข้อดีของระบบจัดการฐานข้อมูลเชิงสัมพันธ์ คำศัพท์ที่เกี่ยวข้องกับแบบจำลองเชิง สัมพันธ์ เงื่อนไขบังคับบูรณภาพ (Integrity Constraints) เงื่อนไขบังคับคีย์ (Key Constraints) เงื่อนไขบังคับคีย์ภายนอก (Foreign Key Constraints) เงื่อนไขบังคับทั่วไป (General www.company.com Constraints) เงื่อนไขบังคับคีย์ ภายนอก Foreign Key Constraints เงื่อนไขบังคับคีย์บังคับ ภายนอก คือ ข้อกำหนดของ ข้อมูลที่อ้างอิงกันระหว่าง รีเลชันเพื่อให้ข้อมูลมี ความสอดคล้องกัน www.company.com เงื่อนไขบังคับคีย์ ภายนอก www.company.com เงื่อนไขบังคับคีย์ ภายนอก เงื่อนไขบังคับภายนอกนี้ทำให้ข้อมูล มีความถูกต้องในการอ้างอิงข้อมูลซึ่ง เราเรียกลักษณะความมีบูรณภาพของข้อมูล ในลักษณะนี้ว่าบูรณภาพเชิงอ้างอิง (referential integrity) การกำหนดเงื่อนไขบังคับนี้เป็นการ บังคับให้ข้อมูลมีบูรณภาพเชิงอ้างอิง (enforce referenctial integrity) แม้ว่าเงื่อนไขบังคับคีย์ภายนอกนี้จะ ใช้ชื่อดังกล่าวแต่เราสามารถอ้างอิงแอ www.company.com หัวข้อบรรยาย แนวคิดทั่วไปเกี่ยวกับแบบ จำลองเชิงสัมพันธ์ วิวัฒนาการของแบบจำลองเชิงสัมพันธ์ กฎ 12 ข้อของ E. F. Codd ข้อดีของระบบจัดการฐานข้อมูลเชิงสัมพันธ์ คำศัพท์ที่เกี่ยวข้องกับแบบจำลองเชิง สัมพันธ์ เงื่อนไขบังคับบูรณภาพ (Integrity Constraints) เงื่อนไขบังคับคีย์ (Key Constraints) เงื่อนไขบังคับคีย์ภายนอก (Foreign Key Constraints) เงื่อนไขบังคับทั่วไป (General Constraints) www.company.com เงื่อนไขบังคับทั่วไป General Constraints เงื่อนไขบังคับทั่วไป คือ ข้อกำหนดของข้อมูลอื่นๆ ซึ่งอาจเกี่ยวข้องกับความ หมายของข้อมูลหรือข้อกำหนด ทางธุรกิจ www.company.com เงื่อนไขบังคับทั่วไป General Constraints ที่มีอายุตั้งแต่ 18 ปีขึ้น ไป ต้องมีเกรดเฉลี่ยมากกว่า 2.75 www.company.com หัวข้อบรรยาย วิว View การแปลง ER Model ให้เป็นแบบจำลอง ข้อมูลเชิงสัมพันธ์ การแปลงเอนทิตีให้เป็นตาราง การแปลงความสัมพันธ์ให้เป็นตาราง ความสัมพันธ์ที่ไม่มีเงื่อนไข ความสัมพันธ์ที่มี Key Constraints ความสัมพันธ์ที่มี Participation Constraints การแปลง Weak Entity การแปลง Class Hierarchies กรณีศึกษา www.company.com หัวข้อบรรยาย วิว View การแปลง ER Model ให้เป็นแบบจำลอง ข้อมูลเชิงสัมพันธ์ การแปลงเอนทิตีให้เป็นตาราง การแปลงความสัมพันธ์ให้เป็นตาราง ความสัมพันธ์ที่ไม่มีเงื่อนไข ความสัมพันธ์ที่มี Key Constraints ความสัมพันธ์ที่มี Participation Constraints การแปลง Weak Entity การแปลง Class Hierarchies กรณีศึกษา www.company.com ER to Relational Model Entity to Table เอนทิตี (entity types) ในแบบ จำลองเชิงสัมพันธ์แทนได้ อย่างตรงไปตรงมาด้วยตารางรี เลชันหรือตารางข้อมูล และแอ ทริบิวต์ของเอนทิตีคือแอทริ บิวต์ของรีเลชัน www.company.com ER to Relational Model Entity to Table name gpa sid Student www.company.com ER to Relational Model Entity to Table Student PK sid name gpa www.company.com ER to Relational Model Entity to Table name Student gpa sid PK sid Student name gpa www.company.com ER to Relational Model Entity to Table sid name gpa B507566 สมชาย 3.44 6 B507568 สมศรี 3.21 8 B507565 สมศรี 3.82 0 B507583 สมศักดิ์ www.company.com 1.80 ER to Relational Model Entity to Table www.company.com ER to Relational Model Entity to Table name Employee salary id PK id name Employee salary www.company.com หัวข้อบรรยาย วิว View การแปลง ER Model ให้เป็นแบบจำลอง ข้อมูลเชิงสัมพันธ์ การแปลงเอนทิตีให้เป็นตาราง การแปลงความสัมพันธ์ให้เป็นตาราง ความสัมพันธ์ที่ไม่มีเงื่อนไข ความสัมพันธ์ที่มี Key Constraints ความสัมพันธ์ที่มี Participation Constraints การแปลง Weak Entity การแปลง Class Hierarchies กรณีศึกษา www.company.com ER to Relational Model Relationship name grade cname gpa credits id cid Student Enrolled Course www.company.com ER to Relational Model Relationship name grade cname gpa credits id cid Student Enrolled Course Student Enrolled Course PK sid PK cid name FK1 sid cname gpa FK2 cid credits grade www.company.com ER to Relational Model Relationship name since dname salary budget id did Employee Works_in Department Employee Works_in Department PK id PK did name FK1 id dname salary FK2 did budget since www.company.com ER to Relational Model Relationship: one-to-many name since dname salary budget id did 1 N Employee Manages Department Employee Department PK id PK did name dname salary budget since FK1 id www.company.com ER to Relational Model Relationship: participation constraints since name dname id salary did budget 1 M Manages Employee Department Works_in since www.company.com ER to Relational Model Relationship: participation constraints name since dname id salary did budget 1 M Manages Employee Department Works_in Employee Department since PK id PK did name dname salary budget since FK1 id www.company.com ER to Relational Model Relationship: weak entity name cost salary dname id age 1 M Relation Employee Policy Dependent Entity ship www.company.com ER to Relational Model Relationship: weak entity name cost salary dname id age 1 M Relation Employee Policy Dependent Entity ship Employee Dependent_Policy PK id PK did name dname salary budget since FK1 id www.company.com ER to Relational Model Relationship: class hierarchy name id salary Employee ISA hours_worked contract_id hourly_wage Contract_ emps Hourly_ emps www.company.com ER to Relational Model Relationship: class hierarchy name id salary Employee ISA Employee hourly_wage hours_worked contract_id PK id Contract_ emps Hourly_ emps name dob Contract_Emps Hourly_Emps PK,FK1 id PK,FK1 id contract_id hours_worked hourly_wages www.company.com ER to Relational Model Relationship: class hierarchy name id salary Employee ISA hours_worked contract_id hourly_wage Contract_ emps Hourly_ emps Contract_Emps Hourly_Emps PK id PK id name name dob dob contract_id hourly_wages hours_worked www.company.com หัวข้อบรรยาย วิว View การแปลง ER Model ให้เป็นแบบจำลอง ข้อมูลเชิงสัมพันธ์ การแปลงเอนทิตีให้เป็นตาราง การแปลงความสัมพันธ์ให้เป็นตาราง ความสัมพันธ์ที่ไม่มีเงื่อนไข ความสัมพันธ์ที่มี Key Constraints ความสัมพันธ์ที่มี Participation Constraints การแปลง Weak Entity การแปลง Class Hierarchies กรณีศึกษา www.company.com Case 7-Elephant order_date card_no qty ship_date password model login address brand cost name tel pid price cid Employee Orders Phone url www.company.com Case มหาวิทยาลัยเทคโนโลยีสุรบุรุษ www.company.com Institute id since wage name 1 N Is_dean_of has title salary 1 name since N wage id 1 N Teacher Is_head_of School id N name 1 1 N Works_in has Teaches since N M grade cname credits name id cid gpa N M Course Enrolled Student capacity N time M Meets_in Room no www.company.com Case อู่เฉิดฉาย cus_address cus_ phone make model cus_name year reg_no balance cus_id color 1 N Customer Owns Car mech_id N M Mechanic Repairs price mech_name rep_details mech_address skills date_out mech_phone date_in salary www.company.com Case อู่เฉิดฉาย Customer Car PK cus_id PK reg_no cus_name make cus_address model cus_phone year balance color FK1 owner Mechanic Repairs PK mech_id PK date_in mech_name PK,FK1 reg_no mech_address PK,FK2 mech_id mech_phone salary date_out skills repair_details price www.company.com หัวข้อบรรยาย Concept ual Design แนวคิดทั่วไปเกี่ยวกับแบบ Logical จำลองเชิงสัมพันธ์ Design วิวัฒนาการของแบบจำลองเชิงสัมพันธ์ กฎ 12 ข้อของ E. F. Codd Physical ข้อดีของระบบจัดการฐานข้อมูลเชิงสัมพันธ์ Design คำศัพท์ที่เกี่ยวข้องกับแบบจำลองเชิง สัมพันธ์ เงื่อนไขบังคับบูรณภาพ (Integrity Constraints) เงื่อนไขบังคับคีย์ (Key Constraints) เงื่อนไขบังคับคีย์ภายนอก (Foreign Key Constraints) เงื่อนไขบังคับทั่วไป (General Constraints) www.company.com หัวข้อบรรยาย แนวคิดทั่วไปเกี่ยวกับแบบ จำลองเชิงสัมพันธ์ วิวัฒนาการของแบบจำลองเชิงสัมพันธ์ กฎ 12 ข้อของ E. F. Codd ข้อดีของระบบจัดการฐานข้อมูลเชิงสัมพันธ์ คำศัพท์ที่เกี่ยวข้องกับแบบจำลองเชิง สัมพันธ์ เงื่อนไขบังคับบูรณภาพ (Integrity Constraints) เงื่อนไขบังคับคีย์ (Key Constraints) เงื่อนไขบังคับคีย์ภายนอก (Foreign Key Constraints) เงื่อนไขบังคับทั่วไป (General Constraints) www.company.com หัวข้อบรรยาย แนวคิดทั่วไปเกี่ยวกับแบบ จำลองเชิงสัมพันธ์ วิวัฒนาการของแบบจำลองเชิงสัมพันธ์ กฎ 12 ข้อของ E. F. Codd ข้อดีของระบบจัดการฐานข้อมูลเชิงสัมพันธ์ คำศัพท์ที่เกี่ยวข้องกับแบบจำลองเชิง สัมพันธ์ เงื่อนไขบังคับบูรณภาพ (Integrity Constraints) เงื่อนไขบังคับคีย์ (Key Constraints) เงื่อนไขบังคับคีย์ภายนอก (Foreign Key Constraints) เงื่อนไขบังคับทั่วไป (General Constraints) www.company.com หัวข้อบรรยาย แนวคิดทั่วไปเกี่ยวกับแบบ จำลองเชิงสัมพันธ์ วิวัฒนาการของแบบจำลองเชิงสัมพันธ์ กฎ 12 ข้อของ E. F. Codd ข้อดีของระบบจัดการฐานข้อมูลเชิงสัมพันธ์ คำศัพท์ที่เกี่ยวข้องกับแบบจำลองเชิง สัมพันธ์ เงื่อนไขบังคับบูรณภาพ (Integrity Constraints) เงื่อนไขบังคับคีย์ (Key Constraints) เงื่อนไขบังคับคีย์ภายนอก (Foreign Key Constraints) เงื่อนไขบังคับทั่วไป (General www.company.com Constraints) หัวข้อบรรยาย วิว View การแปลง ER Model ให้เป็นแบบจำลองEmployee ข้อมูลเชิงสัมพันธ์ การแปลงเอนทิตีให้เป็นตาราง PK id การแปลงความสัมพันธ์ให้เป็นตาราง name ความสัมพันธ์ที่ไม่มีเงื่อนไข salary ความสัมพันธ์ที่มี Key Constraints ความสัมพันธ์ที่มี Participation Constraints การแปลง Weak Entity การแปลง Class Hierarchies กรณีศึกษา www.company.com หัวข้อบรรยาย วิว View การแปลง ER Model ให้เป็นแบบจำลอง ข้อมูลเชิงสัมพันธ์ Employee Works_in Department การแปลงเอนทิตีให้เป็นตาราง PK id PK did การแปลงความสัมพันธ์ให้เป็นตาราง dname name FK1 id ความสัมพันธ์ที่ไม่มีเงื่อนไข salary FK2 did budget since ความสัมพันธ์ที่มี Key Constraints ความสัมพันธ์ที่มี Participation Constraints การแปลง Weak Entity การแปลง Class Hierarchies กรณีศึกษา www.company.com หัวข้อบรรยาย วิว View การแปลง ER Model ให้เป็นแบบจำลอง ข้อมูลเชิงสัมพันธ์ การแปลงเอนทิตีให้เป็นตาราง Employee Department การแปลงความสัมพันธ์ให้เป็นตาราง PK id PK did ความสัมพันธ์ที่ไม่มีเงื่อนไข name dname ความสัมพันธ์ที่มี Key Constraintssalary budget since ความสัมพันธ์ที่มี Participation Constraints FK1 id การแปลง Weak Entity การแปลง Class Hierarchies กรณีศึกษา www.company.com หัวข้อบรรยาย วิว View การแปลง ER Model ให้เป็นแบบจำลอง ข้อมูลเชิงสัมพันธ์ การแปลงเอนทิตีให้เป็นตาราง Employee Department การแปลงความสัมพันธ์ให้เป็นตาราง PK id PK did ความสัมพันธ์ที่ไม่มีเงื่อนไข name dname ความสัมพันธ์ที่มี Key Constraints salary budget since ความสัมพันธ์ที่มี Participation Constraints FK1 id การแปลง Weak Entity การแปลง Class Hierarchies กรณีศึกษา www.company.com หัวข้อบรรยาย วิว View การแปลง ER Model ให้เป็นแบบจำลอง ข้อมูลเชิงสัมพันธ์ การแปลงเอนทิตีให้เป็นตาราง Employee Dependent_Policy การแปลงความสัมพันธ์ให้เป็นตาราง PK id PK did ความสัมพันธ์ที่ไม่มีเงื่อนไข name dname ความสัมพันธ์ที่มี Key Constraints salary budget since ความสัมพันธ์ที่มี Participation Constraints FK1 id การแปลง Weak Entity การแปลง Class Hierarchies กรณีศึกษา www.company.com หัวข้อบรรยาย วิว View การแปลง ER Model ให้เป็นแบบจำลอง ข้อมูลเชิงสัมพันธ์ Employee PK id การแปลงเอนทิตีให้เป็นตาราง name การแปลงความสัมพันธ์ให้เป็นตาราง dob ความสัมพันธ์ที่ไม่มีเงื่อนไข ความสัมพันธ์ที่มี Key Constraints Contract_Emps Hourly_Emps ความสัมพันธ์ที่มี Participation Constraints PK,FK1 id PK,FK1 id การแปลง Weak Entity contract_id hours_worked hourly_wages การแปลง Class Hierarchies กรณีศึกษา www.company.com หัวข้อบรรยาย วิว View การแปลง ER Model ให้เป็นแบบจำลอง ข้อมูลเชิงสัมพันธ์ การแปลงเอนทิตีให้เป็นตาราง การแปลงความสัมพันธ์ให้เป็นตาราง ความสัมพันธ์ที่ไม่มีเงื่อนไข ความสัมพันธ์ที่มี Key Constraints ความสัมพันธ์ที่มี Participation Constraints การแปลง Weak Entity การแปลง Class Hierarchies กรณีศึกษา www.company.com วัตถุประสงค์ สามารถอธิบายถึงวิวัฒนาการของ แบบจำลองเชิงสัมพันธ์ สามารถอธิบายแนวคิดของแบบ จำลองเชิงสัมพันธ์ได้ สามารถอธิบายการแทนข้อมูลใน แบบจำลองเชิงสัมพันธ์ได้ สามารถอธิบายการกำหนด เงื่อนไขบังคับสำหรับบูรณภาพ ของข้อมูลแบบต่างๆ ได้ สามารถสร้างแบบจำลองเชิง www.company.com