Please enable JavaScript.
Coggle requires JavaScript to display documents.
การออกแบบบรรทัดฐาน, นางสาวปิยะดา ชาวนา ทด4/1 เลขที่ 8 - Coggle Diagram
การออกแบบบรรทัดฐาน
การทำให้เป็นบรรทัดฐาน(Normalization) ถือว่าเป็นเทคนิคที่ที่นิยมใช้เป็นแนวทางในการออกแบบฐานข้อมูลเชิงสัมพันธ์ โดยการปรับตารางข้อมูลที่มีความผิดปกติ(Anormaly)โดยอาศัยหลักการและกฏเกณฑ์ของรูปแบบบรรทัดฐาน(Normal Form)รูปต่าง ๆ ซึ่งมีการนิยามรูปแบบบรรทัดฐานขั้นต่างๆ ไว้ 6 รูปแบบดังนี้
-
-
-
การทำให้เป็นบรรทัดฐาน(Normalization) คือหลักการในการออกแบบฐานข้อมูลเชิงสัมพันธ์(Relational Database) ซึ่งคิดค้นโดย Dr. E.F. Codd ตั้งแต่ปี 1963 วัตถุประสงค์เพื่อหลีกหนีการเกิดกลุ่มข้อมูลซ้ำ ๆ หรือไม่ทำให้เกิดความซ้ำซ้อนของข้อมูล และทำให้เกิดความมั่นใจว่าการจัดเก็บและค้นหาข้อมูลทำได้อย่างมีประสิทธิภาพ
การเพิ่มข้อมูล(Insert Anomaly) ถ้าต้องการเพิ่มรายการข้อมูลโครงการใหม่ของบริษัท โดยยังไม่มีข้อมูลพนักงานที่ทำงานในโครงการใหม่ดังกล่าว จะทำให้ไม่สามารถเพิ่มข้อมูลได้ เพราะค่าของคีย์หลักคือ รหัสพนักงาน(E_Num) จะเป็นค่าว่าง(Null)
การแก้ไขข้อมูล(Insert Anomaly) ถ้าต้องการแก้ไขชื่อโครงการ เช่น จากชื่อ Evergreen เป็น Forever จะต้องแก้ไขข้อมูลมากกว่า 1 รายการ และถ้าแก้ไขไม่ครบทุกรายการ จะมีผลทำให้เกิดข้อมูลไม่สอดคล้องกัน(Data inconsistency
การลบข้อมูล(Delete Anomaly) ถ้ามีการลบข้อมูลโครงการ รหัส 15 Evergreen ออกไป จะมีผลทำให้ข้อมูลของพนักงานบางคนหายไปจากฐานข้อมูลด้วย
ปัญหาในการเพิ่มข้อมูล(Insert anomaly) กล่าวคือ หากต้องการจัดเก็บข้อมูลตำแหน่งงานใหม่ที่กำหนดขึ้นในตาราง เช่น ตำแหน่ง Project manager แต่ตำแหน่งงานนี้ยังไม่ได้กำหนดว่าให้พนักงานคนใดทำงานในตำแหน่งดังกล่าว จะไม่สามารถจัดเก็บได้ เนื่องจากจะทำให้ค่าของคีย์หลักในรายการดังกล่าวเป็นค่าว่าง
ปัญหาในการแก้ไขข้อมูล(Update anomaly) กล่าวคือ หากต้องการปรับปรุงอัตราค่าจ้างของตำแหน่งงานบางตำแหน่งจะต้องเปลี่ยนข้อมูลดังกล่าวในทุกรายการที่มีพนักงานทำงานในตำแหน่งนั้น เช่น ต้องการแก้ไขอัตราค่าจ้างของตำแหน่งงาน Programmer จาก 800 เป็น ค่า 1000 จะต้องแก้ไขทุกรายการที่มีตำแหน่งงานเป็น Programmer ถ้าสมมุติแก้ไขไม่ครบทุกรายการจะทำให้เกิดปัญหาข้อมูลขัดแย้งกัน(Data Inconsistency) คือ ตำแหน่งงานเดียวกันแต่มีค่าจ้างไม่เท่ากันในบางรายการ
ปัญหาในการลบข้อมูล(Delete anomaly) กล่าวคือ หากต้องการลบข้อมูลพนักงานบางรายการออกไป อาจทำให้ข้อมูลที่จำเป็นถูกลบตามไปด้วย เช่น หากต้องการลบข้อมูลพนักงานรหัส 001 ออกจากตารางข้อมูล จะทำให้ข้อมูลของตำแหน่งงาน Electric Engineer หายไปด้วย เนื่องจากในกรณีนี้มีเพียงพนักงานรหัสดังกล่าวที่ทำงานในตำแหน่งนี้เท่านั้น
-