Introduction to Database System

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
รูปแบบที่เป็นบรรทัดฐาน (Normal Form)
Advertisements

แบบจำลองฐานข้อมูล คือ เครื่องมือในเชิงแนวคิดที่ใช้ในการอธิบาย ข้อมูล
ชื่อผู้สอน : นางฐิติมา พิริยะ
ความรู้เบื้องต้นเกี่ยวกับระบบฐานข้อมูล
จัดทำโดย น. ส. ดวงกมล งามอยู่เจริญ เลขที่ 8 น. ส. ณัชชา เชื้อตา เลขที่ 6 เตรียมบริหารธุรกิจปี 1.
คอมพิวเตอร์ช่วยสอน (CAI)
น. ส. สุธาสินี แซ่ซู กลุ่ม B06 1 แนะนำโปรแกรมที่ นิสิตชอบ จัดทำ โดย น. ส. สุธาสินี แซ่ซู เอกบรรณารักษศาสตร์และ สารสนเทศศาสตร์ คณะมนุษย์ศาสตร์
คณิตศาสตร์พื้นฐาน ค ชั้นมัธยมศึกษาปีที่ 3 โดย ครูชำนาญ ยันต์ทอง
1. Select query ใช้สำหรับดึงข้อมูลที่ต้องการ
ตัวผกผันการคูณของเมทริกซ์
Adobe Photoshop ลักษณะ Software ที่ฉันชอบ ลักษณะ Software ที่ฉันชอบ วิธีการใช้งานโปรแกรม Adobe Photoshop วิธีการใช้งานโปรแกรม Adobe Photoshop เหตุผลที่ชอบ.
Database Management System
ซอฟต์แวร์และการเลือกใช้
พยาบาลวิชาชีพชำนาญการพิเศษ
การใช้งาน Microsoft Excel
ระบบจัดการพนักงาน E-Clocking. E-clocking Application คืออะไร E-clocking ย่อมาจากคำว่า Easy Clocking ก็คือทำงานและ ดูแลข้อมูลการบริหารบันทึกเวลาการทำงานของพนักงานแบบ.
โปรแกรมคำนวณคะแนน สหกรณ์ ตามเกณฑ์ดีเด่นแห่งชาติ กรมส่งเสริม สหกรณ์ กองพัฒนาสหกรณ์ด้านการเงิน และร้านค้า วิธีการใ ช้
การพัฒนาโปรแกรมระบบ รายงาน หน่วยงานเวชสารสนเทศ หน่วยงานเวชสารสนเทศ กลุ่มพัฒนาระบบบริการ สุขภาพโรงพยาบาลสุโขทัย.
สำนักงานเขตพื้นที่การศึกษา มัธยมศึกษา เขต 39 สำนักงานคณะกรรมการ การศึกษาขั้นพื้นฐาน 16 พฤษภาคม 2558 ณ โรงแรมน่านเจ้า จังหวัดพิษณุโลก การประชุมชี้แจง เรื่อง.
ความรู้ทั่วไปเกี่ยวกับระบบ คุณภาพ ความรู้ทั่วไปเกี่ยวกับระบบ คุณภาพ.
LOGO ภาษาซี 1.1 อ. กฤติเดช จินดาภัทร์. LOGO ตัวอย่างโค้ดภาษาซี
โดย... นายวินิจ รักชาติ อดีตผู้อำนวยการ สำนักงาน ทรัพยากรธรรมชาติ และสิ่งแวดล้อม จังหวัด กาญจนบุรี
รายชื่อกลุ่ม 1.นางสาว ศลัญญากรณ์ ศิลป์มณีโชค (พลอย) ปวส. 2/6 รหัส สาขาโลจิสติกส์ 2.นางสาว พรพรรณ หมอนสวัสดิ์ (มุก) ปวส. 2/6 รหัส สาขาโลจิสติกส์
Microsoft Access 2007 การสร้างฟอร์ม
SQL Structured Query Language.
รายชื่อกลุ่ม 1.น.ส.อริศรา มีตัน ปวส. 2/6 รหัส น.ส.พรพรรณ หมอนสวัสดิ์ ปวส. 2/6 รหัส น.ส.ศลัญญากรณ์ ศิลป์มณีโชค ปวส. 2/6 รหัส
stack #2 ผู้สอน อาจารย์ ยืนยง กันทะเนตร
รายการ(List) [1] ผู้สอน อาจารย์ ยืนยง กันทะเนตร
บทที่ 2 นอร์มัลไลเซชัน normalization
การทำ Normalization 14/11/61.
หน่วยการเรียนที่ 6 เรื่อง การจัดการฐานข้อมูลด้วย PHP Function
บทสรุป ความรู้พื้นฐานเกี่ยวกับระบบฐานข้อมูล
อนุกรมอนันต์และการลู่เข้า
บทที่ 1 สถาปัตยกรรมของระบบฐานข้อมูล (Database Architecture)
การจัดการระบบฐานข้อมูล ภาษาที่ใช้ในระบบจัดการฐานข้อมูล
ห้องแลปการคิดสร้างสรรค์
รายการ(List) [3] ผู้สอน อาจารย์ ยืนยง กันทะเนตร
BC320 Introduction to Computer Programming
การลดรูป Logic Gates บทที่ 6.
บทที่ 8 การควบคุมโครงการ
One Point Lesson (OPL).....บทเรียนประเด็นเดียว
กระบวนการปรับบรรทัดฐาน Normalization Process
ชุดที่ 1 ไป เมนูรอง.
คำสั่ง Create , Insert, Delete, Update
Chapter 8 : นอร์มัลไลเซชัน (Normalization)
บทที่ 3 แฟ้มข้อมูลและฐานข้อมูล
ขั้นตอนการออกแบบ ผังงาน (Flow Chart)
Object-Oriented Programming Paradigm
พื้นฐานการออกแบบ กราฟิก หมายถึง ศิลปะแขนงหนึ่งซึ่งใช้การสื่อความหมาย ด้วยเส้น สัญลักษณ์ รูปวาด ภาพถ่าย กราฟ แผนภูมิ การ์ตูน ฯลฯ เพื่อให้สามารถสื่อความหมายของข้อมูลได้ถูกต้องตรง.
วิธีการกำหนดค่า Microsoft SharePoint ของคุณ เว็บไซต์ออนไลน์
Data storage II Introduction to Computer Science ( )
Data storage II Introduction to Computer Science ( )
สาขาวิชาคอมพิวเตอร์ธุรกิจ โดย อาจารย์กิตติพงษ์ ภู่พัฒน์วิบูลย์
การวิจัยทางการท่องเที่ยว
การออกแบบแบบสอบถาม การออกแบบแบบสอบถาม
บทสรุป ความหมายของ Query ความหมายของ Query
สถาปัตยกรรมของฐานข้อมูล
ความรู้เบื้องต้นเกี่ยวกับจำนวนจริง
ฐานข้อมูลเชิงสัมพันธ์
Array: One Dimension Programming I 9.
การเขียนโปรแกรมคอมพิวเตอร์ แบบภาษาเชิงวัตถุ
การเติบโตของฟังก์ชัน (Growth of Functions)
บทที่ 4 การจำลองข้อมูลและกระบวนการ (Data and Process Modeling)
Chapter 7 : ขั้นตอนการแปลงแผนภาพ ER มาเป็นรีเลชั่น ( ER-to-Relational Mapping Algorithm ) อ.คเชนทร์ ซ่อนกลิ่น.
โดย หัวหน้างานบริหารทั่วไป
การเขียนโปรแกรมด้วยภาษาไพทอน การเขียนโปรแกรมแบบทางเลือก
บทที่ 5 พัลส์เทคนิค
โครงการถ่ายทอดเทคโนโลยีถนนรีไซเคิลเพื่อลดขยะพลาสติกใน 4 ภูมิภาค
ทายสิอะไรเอ่ย ? กลม เขียวเปรี้ยว เฉลย ทายสิอะไรเอ่ย ? ขาว มันจืด เฉลย.
กระดาษทำการ (หลักการและภาคปฏิบัติ)
ใบสำเนางานนำเสนอ:

Introduction to Database System Chapter 5: Normalization Adisak Intana Lecturer

บรรทัดฐานข้อมูล (Normalization) เป็นการแปลงข้อมูลที่อยู่ในรูปแบบซับซ้อน ยากต่อการจัดการให้อยู่ในรูปแบบง่ายและสะดวกต่อการจัดการ 2

ความจำเป็นของบรรทัดฐานข้อมูล (Normalization) ตัวอย่าง 5.1 ตารางโครงการ 3

ความจำเป็นของบรรทัดฐานข้อมูล (Normalization) จากตารางตัวอย่าง 5.1 primary key คือ ………………….. 4

ความจำเป็นของบรรทัดฐานข้อมูล (Normalization) 1. ถ้าหากต้องการเพิ่มพนักงานใหม่ เช่น นายสมรักษ์ คำเหมือง ซึ่งเป็นนักเขียนโปรแกรม สามารถทำได้หรือไม่? 2. ถ้าหากต้องการแก้ไขข้อมูลพนักงานที่ชื่อ นายสมบัติ ส่งศรี เป็น สมบัติ ส่งส่วย จะแก้ไขได้ หรือไม่? 5

ความจำเป็นของบรรทัดฐานข้อมูล (Normalization) 3. ถ้าหากต้องการระบบโครงการระบบบัญชี ออกลบได้หรือไม่? 6

ความจำเป็นของบรรทัดฐานข้อมูล (Normalization) เราเรียกปัญหาที่เกิดจากการเพิ่มข้อมูลว่า insert anomaly ปัญหาที่เกิดจากการแก้ไขข้อมูลว่า update anomaly ปัญหาที่เกิดจากการลบข้อมูลว่า delete anomaly 7

ประโยชน์ของการทำบรรทัดฐานข้อมูล (Normalization) 1. การทำบรรทัดฐานเป็นเครื่องมือที่ช่วยในการออกแบบฐานข้อมูลเชิงสัมพันธ์ 2. ทำให้ทราบว่ารีเลชันที่ออกแบบ เกิดปัญหาหรือไม่ ด้านใดบ้าง 3. ช่วยแก้ปัญหาที่เกิดขึ้นกับรีเลชัน 4. ช่วยลดปัญหาที่เกิดขึ้นจากการจัดเก็บข้อมูล 8

ระดับของการทำบรรทัดฐานข้อมูล (Normalization) การทำบรรทัดฐานข้อมูลมีหลายระดับแต่จะแนะนำให้รู้จักเพียง 3 ระดับ มีดังต่อไปนี้ 1 NF Normalization 2 NF Normalization 3 NF Normalization 9

นิยาม : รีเลชันใดจะอยู่ในรูปแบบนอร์มัลระดับที่ 1 (1 NF) 1 NF Normalization นิยาม : รีเลชันใดจะอยู่ในรูปแบบนอร์มัลระดับที่ 1 (1 NF) ได้ เมื่อรีเลชันนั้นจะต้องไม่มีกลุ่มข้อมูลซ้ำกันอยู่ (repeating group) 10

1 NF Normalization ตัวอย่าง 5.2 ตารางโครงการ 11

มีหลายค่า (repeating group) 1 NF Normalization 1 แถว 1 แถว มีหลายค่า (repeating group) 12

1 NF Normalization 13

1 NF Normalization 14

1 NF Normalization ตัวอย่าง 5.3 ตารางพนักงาน 15

นิยาม : รีเลชันใดจะอยู่ในรูปแบบนอร์มัลระดับที่ 1 (1 NF) 2 NF Normalization นิยาม : รีเลชันใดจะอยู่ในรูปแบบนอร์มัลระดับที่ 1 (1 NF) ได้ เมื่อรีเลชันนั้น 1. เป็น 1 NF 2. ไม่มี partial independency 16

partial independency คือ 2 NF Normalization partial independency คือ attributes ที่ไม่ได้เป็น key หรือ non key จะต้องขึ้นกับ attributes ที่เป็น key ทุกตัว กล่าวคือ attributes ที่เป็น key ทุกตัว จะต้องสามารถเป็นตัวแทนใช้ในการระบุ attributes ที่ไม่ได้เป็น key ได้ 17

2 NF Normalization ตัวอย่าง 5.4 ตารางโครงการ 18

primary key คือ ………………….. 2 NF Normalization จากตารางตัวอย่าง 5.4 primary key คือ ………………….. 19

โครงการหมายเลข 15 มีชื่อโครงการว่าอย่างไร 2 NF Normalization โครงการหมายเลข 15 มีชื่อโครงการว่าอย่างไร มีพนักงานที่รับผิดชอบ ชื่ออะไร รหัสอะไร ทำงานตำแหน่งไหน รหัสโครงการ, รหัสพนักงาน --> ชื่อโครงการ, ชื่อพนักงาน, ตำแหน่ง 20

โครงการหมายเลข 15 มีชื่อโครงการว่าอย่างไร 2 NF Normalization โครงการหมายเลข 15 มีชื่อโครงการว่าอย่างไร รหัสโครงการ --> ชื่อโครงการ 21

พนักงานที่มีรหัส 101 ชื่ออะไร ทำงานตำแหน่งไหน 2 NF Normalization พนักงานที่มีรหัส 101 ชื่ออะไร ทำงานตำแหน่งไหน รหัสพนักงาน --> ชื่อพนักงาน, ตำแหน่ง 22

จากตัวอย่างไม่เป็น 2 NF เพราะเนื่องจาก 2 NF Normalization จากตัวอย่างไม่เป็น 2 NF เพราะเนื่องจาก รหัสโครงการ, รหัสพนักงาน --> ชื่อโครงการ, ชื่อพนักงาน, ตำแหน่ง รหัสพนักงาน --> ชื่อพนักงาน, ตำแหน่ง มี ชื่อพนักงาน และตำแหน่ง ที่ไม่ใช่คีย์ สามารถถูกคีย์รหัสพนักงานระบุได้ โดยไม่ต้องใช้รหัสโครงการ 23

รหัสโครงการ --> ชื่อโครงการ 2 NF Normalization รหัสโครงการ --> ชื่อโครงการ มี ชื่อโครงการ ที่ไม่ใช่คีย์ สามารถถูกคีย์รหัสโครงการระบุได้ โดยไม่ต้องใช้รหัสพนักงาน 24

มีบาง attribute ที่ไม่ใช่คีย์ สามารถถูกระบุได้เพียงแค่ คีย์ใดคีย์หนึ่ง 2 NF Normalization สรุปได้ว่า มีบาง attribute ที่ไม่ใช่คีย์ สามารถถูกระบุได้เพียงแค่ คีย์ใดคีย์หนึ่ง 25

วิธีการแก้ไข แยกเป็น 3 ตาราง ดังนี้ โครงการ(รหัสโครงการ, ชื่อโครงการ) 2 NF Normalization วิธีการแก้ไข แยกเป็น 3 ตาราง ดังนี้ โครงการ(รหัสโครงการ, ชื่อโครงการ) พนักงาน(รหัสพนักงาน, ชื่อพนักงาน, ตำแหน่ง) ผู้รับผิดชอบ(รหัสโครงการ, รหัสพนักงาน) 26

2 NF Normalization ตารางโครงการ 27

2 NF Normalization ตารางพนักงาน 28

2 NF Normalization ตารางผู้รับผิดชอบโครงการ 29

นิยาม : รีเลชันใดจะอยู่ในรูปแบบนอร์มัลระดับที่ 3 (3 NF) 3 NF Normalization นิยาม : รีเลชันใดจะอยู่ในรูปแบบนอร์มัลระดับที่ 3 (3 NF) ได้ เมื่อรีเลชันนั้น 1. เป็น 2 NF 2. ไม่มี transitive independency 30

transitive independency คือ 3 NF Normalization transitive independency คือ attributes ที่ไม่ได้เป็น key หรือ non key จะขึ้นกับ attributes ที่ไม่ได้เป็น non key 31

3 NF Normalization 32

พนักงานรหัส 101 ชื่ออะไร ทำตำแหน่งไหน อยู่แผนกอะไร 3 NF Normalization พนักงานรหัส 101 ชื่ออะไร ทำตำแหน่งไหน อยู่แผนกอะไร รหัสพนักงาน --> ชื่อพนักงาน, ตำแหน่ง, รหัสแผนก, ชื่อแผนก 33

แผนก 1001 มีชื่อว่าแผนกอะไร 3 NF Normalization แผนก 1001 มีชื่อว่าแผนกอะไร รหัสแผนก --> ชื่อแผนก 34

จากตัวอย่างไม่เป็น 3 NF เพราะเนื่องจาก 3 NF Normalization จากตัวอย่างไม่เป็น 3 NF เพราะเนื่องจาก รหัสแผนก --> ชื่อแผนก มี ชื่อแผนก ที่ไม่ใช่คีย์ สามารถถูกรหัสแผนก ที่ไม่ใช่คีย์ระบุได้ โดยไม่ต้องใช้รหัสพนักงาน 35

Transitive dependency รหัสพนักงาน --> รหัสแผนก --> ชื่อแผนก 3 NF Normalization Transitive dependency รหัสพนักงาน --> รหัสแผนก --> ชื่อแผนก 36

วิธีการแก้ไข แยกเป็น 2 ตาราง ดังนี้ 3 NF Normalization วิธีการแก้ไข แยกเป็น 2 ตาราง ดังนี้ พนักงาน(รหัสพนักงาน, ชื่อพนักงาน, ตำแหน่ง) แผนก(รหัสแผนก, ชื่อแผนก) 37

3 NF Normalization ตารางพนักงาน 38

3 NF Normalization ตารางแผนก 39