Charpter3 PDF

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 32

บทที่ 3

แบบจำลองฐำนข้อมูล
(Database Models)

เป็นที่ทราบกันดีแล้วว่า การใช้ฐานข้อมูลเป็นตัวเลือกอันดับต้น ๆ ของการจัดเก็บ


ข้อมูลของระบบสารสนเทศ และในปัจจุบันได้มีการนาคอมพิวเตอร์มาใช้ในการจัดการกับ
ข้อมูล หรืองานอื่น ๆ ก่อให้เกิดประโยชน์อย่างมหาศาลในทุก ๆ ด้าน ทาให้สามารถจัดเก็บ
ข้อมูลไว้ในฐานข้อมูลได้เป็นจานวนมาก การเรียกใช้ขอ้ มูลกระทาได้ง่ายมีความสะดวกมาก
ขึ้น ข้อมูลครอบคลุม ตอบสนองความต้องการของผู้ใช้ ข้อมูลที่เก็บไว้ในฐานข้อมูลส่วน
ใหญ่ จะมีรายละเอียดของข้อมูลเป็นจานวนมาก ทาให้ผู้ออกแบบ ผู้เขียนโปรแกรม และ
ผู้ใช้งานระบบฐานข้อมูล มีมุมมองเกี่ยวกับข้อมูลชุดเดียวกันที่อยู่ในฐานข้อมูลในมุมมองที่
แตกต่างกัน ทาให้การออกแบบฐานข้อมูลเกิดข้อผิดพลาด ไม่สามารถสะท้ อนให้เ ห็นถึง
ขั้นตอนการด าเนินงานนั้น ๆ ได้ เพื่อแก้ปัญ หาดังกล่าวจึงได้มีการพัฒนาแบบจาลอง
ฐานข้อมูลเพื่อเป็นสื่อกลางระหว่างผู้ออกแบบและพัฒนาฐานข้อมูลกับผูใ้ ช้ให้ตรงกัน
แบบจาลองข้อมูล เป็นเครื่องมือในเชิงแนวความคิดที่ใช้อธิบายข้อมูล โครงสร้าง
ข้อมูล ความสัมพันธ์ของข้อมูล ความหมายของข้อมูล และเงื่อนไขบังคับความสอดคล้อง
กันของข้อมูลภายในฐานข้อมูล จากรูปแบบที่เป็นแนวคิดเข้าใจยาก ให้อยู่ในรูปแบบที่
เข้าใจได้ง่าย วัตถุประสงค์ของแบบจาลองข้อมูล ก็เพื่อนาแนวคิดต่าง ๆ มาเสนอให้เกิด
เป็นแบบจาลองเพื่อนาเสนอข้อมูล และความสัมพันธ์ระหว่างข้อมูลในรูปแบบที่เข้าใจง่าย
การพัฒนาแบบจาลองข้อมูลเริ่มขึ้นตั้งแต่ปี ค.ศ. 1940 ในช่วงแรกเป็นแบบจาลอง
ที่เก็บข้อมูลเป็นไฟล์แบบลาดับชั้น (Hierarchical Database Model) และเก็บข้อมูลเป็นไฟล์
แบบเครื อ ข่ า ย (Network Database Model) ทั้ ง สองแบบเป็ น แบบจ าลองที่ ไ ม่ ค่ อ ยมี
ประสิทธิภาพมากนัก ระบบฐานข้อมูลมีการพัฒนาอย่างต่อเนื่องและเจริญก้าวหน้าไป
อย่างรวดเร็ว สามารถจัดการข้อมูลได้อย่างมีประสิทธิภาพ ในช่วงปี ค.ศ.1960 มีการคิด
แบบจาลองข้อมูลเชิงสัมพันธ์ (Relational Database Model) ที่ใช้งานได้จริง และถือว่าเป็น
แบบที่มปี ระสิทธิภาพสูงสุด และนิยมใช้กันมากในปัจจุบัน
แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 44

1. ควำมหมำยของแบบจำลองข้อมูล
วัตถุประสงค์สาคัญของแบบจาลองข้อมูล ก็เพื่อที่จะนาแนวคิด ต่าง ๆ มานาเสนอ
ให้เกิดเป็นรูปแบบจาลองที่ใช้สาหรับการอธิบาย เพื่อให้ทราบว่าข้อมูลขององค์กรเหล่านั้น
มีอะไรบ้าง โครงสร้างของข้อมูลเป็นอย่างไร ความสัมพันธ์ระหว่างข้อมูลภายในฐานข้อมูล
นั้นเป็นอย่างไร และที่สาคัญคือ จากรูปแบบที่เป็นแนวคิดที่เข้าใจยากให้อยู่ในรูปแบบที่
เข้าใจได้ง่าย โดยไม่ขึ้นอยู่กับโครงสร้างของฐานข้อมูลนั้ น ๆ และที่สาคัญอีกประการหนึ่ง
คือเพื่อใช้ในการสื่อสารระหว่างผู้ออกแบบฐานข้อมูล ผู้เขียนโปรแกรม และผู้ใช้งานระบบ
ฐานข้ อ มู ล ให้ เ กิ ด ความเข้ า ใจที่ ถู ก ต้ อ งตรงกั น มี ผู้ ใ ห้ นิ ย าม แบบจ ำลองข้ อ มู ล หรื อ
แบบจำลองฐำนข้อมูล ดังนี้
แบบจำลองฐำนข้อมูล หมายถึงโครงสร้างข้อมูลระดับตรรกะที่นาเสนอข้อมูล และ
ความสัมพันธ์ระหว่างข้อมูลให้ผู้ใช้เห็น และเข้าใจแบบจาลองข้อมูลที่ใช้โดยพิจารณาจาก
ภายในฐานข้ อ มู ล ประกอบด้ ว ยข้ อ มู ล อะไรบ้ า ง ความสั ม พั น ธ์ ข องข้ อ มู ล เป็ น อย่ า งไร
โครงสร้างข้อมูลเป็นอย่างไร และมีกฎควบคุมความถู กต้องบนโครงสร้างข้อมูลอย่างไร
(สมลักษณ์ ละอองศรี, 2546 : 95)
แบบจำลองฐำนข้อมูล เป็นแหล่งรวมของแนวความคิดที่พรรณนาถึงความเป็นจริง
ของวัตถุ ข้อมูล และเหตุการณ์ รวมทั้งความสัมพันธ์ให้มีความถูกต้องตรงกันในกฎเกณฑ์
ที่กาหนด (โอภาส เอี่ยมสิรวิ งศ์, 2548 : 58)
แบบจำลองฐำนข้อมูล เป็นแบบจาลองที่ใช้อธิบายถึงโครงสร้าง และความสัมพันธ์
ระหว่างข้อมูลภายในฐานข้อมูล จากแนวความคิดที่เข้าใจยากให้สามารถเข้าใจและจับต้อง
ได้ง่ายขึ้น ดังนั้นแบบจาลองฐานข้อมูลจึงถูกนาไปใช้อธิบายถึงโครงสร้างของฐานข้อมูล
ประเภทต่าง ๆ ที่อยู่ใน รูปของทฤษฎี ที่เข้าใจยาก รวมทั้งนาไปใช้ในการอธิบาย ถึง
โครงสร้างของฐานข้ อมูล ที่นัก ออกแบบฐานข้อมู ลได้ออกแบบไว้ ซึ่งอยู่ใ นรูป แบบของ
แนวความคิ ด และจั บ ต้ อ งได้ ย ากเช่ น เดี ย วกั น (กิ ต ติ ภั ก ดี วั ฒ นะกุ ล และจ าลองครู
อุตสาหะ, 2541 : 30)
อาจจะกล่าวอย่างสรุปได้ว่าแบบจำลองฐำนข้อมูล คือ เครื่องมือ ที่นามาใช้ในการ
จั ด การโครงสร้ า งของข้ อ มู ล ในฐานข้ อ มู ล ที่ แ สดงให้ เ ห็ น ถึ ง ความหมายของข้ อ มู ล
ส่วนประกอบของข้อมูล ความสัมพันธ์ระหว่างข้อมูลภายในฐานข้อมูล และเงื่อนไขบังคับ
แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 45

ความสอดคล้องกันของข้อมูล ให้อยู่ในรูปแบบที่ผู้ใช้สามารถเห็น เข้าใจ เข้าถึงข้อมูลได้ง่าย


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

2. ส่วนประกอบของแบบจำลองฐำนข้อมูล (Data Models Basic Building Blocks)


แบบจาลองฐานข้อมูล ส่วนใหญ่ ประกอบไปด้วย เอนทิตี (Entity) แอททริบิวท์
(Attribute) ความสั ม พั น ธ์ ร ะหว่ า งเอนทิ ตี (Entity Relationship) และข้ อ จ ากั ด ต่ า งๆ
(Constraints) ดังนี้
2.1 เอนทิตี (Entity)
หมายถึ ง วั ต ถุ (Object) หรื อ กลุ่ ม สิ่ ง ของต่ า ง ๆที่ เ ราสนใจจะเก็ บ ข้ อ มู ล ไว้ ใ น
ฐานข้อมูล หรือแนวคิดที่สามารถบอกความแตกต่างของแต่ละเอนทิตีได้ ถือเป็นตัวแทน
ของวัตถุในโลกแห่ง ความเป็นจริง เช่น คน สัตว์ สถานที่ สิ่งของ หรือเหตุการณ์ ซึ่งจะ
เป็นข้อมูลที่จะถูกจัดเก็บอยู่ในฐานข้อมูล เนื่องจากเอนทิตีหนึ่งจะใช้แทนข้อมูลชนิดหนึ่ง ๆ
ดังนั้นแต่ละเอนทิตีจะต้องมีความแตกต่างกัน และจะต้องมีความเป็นเอกลักษณ์เสมอ เช่น
เอนทิตีของนิสิตจะมีข้อมูลนิสิตที่แตกต่างกันหลายคน โดยที่นิสิต แต่ละคน จะมีข้อมูลที่มี
ความแตกต่างจากนิสิตคนอื่น ๆ เช่น นายมานะ ใจงาม จะมีชื่อและนามสกุลที่แตกต่าง
จากนายสมชาย ดีพร้อม เป็นต้น
2.1.1 เอนทิ ตี ที่ เ ป็ น บุ ค คล เช่ น นิ สิ ต อาจารย์ พนั ก งาน นายแพทย์
พยาบาล วิศวกร แม่บ้าน พนักงานขับรถ ฯลฯ
2.1.2 เอนทิตี ที่เป็นสถำนที่ เช่น หมู่บ้าน ตาบล อาเภอ จังหวัด ประเทศ
น้าตก ภูเขา โรงเรียน ร้านอาหาร ฯลฯ
2.1.3 เอนทิตี ที่เป็น วัตถุ สิ่งของ เช่น หนังสือ คอมพิวเตอร์ รถ เรือ อาหาร
ยา อุปกรณ์ เครื่องมือต่าง ๆ ฯลฯ
2.1.4 เอนทิตี ที่เป็น นำมธรรม เช่น วิชา ความสามารถ วัน เวลา ฯลฯ
แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 46

2.1.5 เอนทิตเี ซต (Entity Set) กลุ่มของเอนทิตที ี่มคี ุณสมบัติเหมือนกัน


สัญลักษณ์จะใช้รูปสี่เหลี่ยม (Rectangles)
2.2 แอททริบิวท์ (Attribute)
หมายถึงคุณลักษณะ หรือ คุณสมบัติ (Properties) ของเอนทิตี เช่น
2.2.1 แอททริ บิ ว ท์ ของเอนทิ ตี “นิ สิ ต ” คื อ ข้ อ มู ล เอนทิ ตี นิ สิ ต ที่
อธิบายด้วย แอททริบิวท์ต่าง ๆ เช่น ชื่อ-สกุล, รหัสนิสิต, คณะวิชา, สาขาวิชา, หมายเลข
โทรศัพท์, คะแนนสะสม และที่อยู่ เป็นต้น
2.2.2 แอททริ บิ ว ท์ ของของเอนทิ ตี “ลงทะเบี ย น” คื อ ข้ อ มู ล เอนทิ ตี
ลงทะเบียนที่อธิบายด้วยแอททริบิวท์ต่าง ๆ เช่น รหัสวิชา, รหัสนิสิต, ชื่อวิชา, จานวนหน่วย
กิต, ชื่อผู้สอน , และปีการศึกษา เป็นต้น
2.2.3 แอททริบิวท์ ของของเอนทิตี “ลูกค้า” คือข้อมูลเอนทิตี ลูกค้า ที่
อธิ บ ายด้ ว ยแอททริ บิ ว ท์ ต่ า ง ๆ เช่ น รหั ส ลู ก ค้ า , ชื่ อ สกุ ล , สถานภาพ, อาชี พ , อายุ ,
หมายเลขโทรศัพท์และที่อยู่ เป็นต้น
แอททริ บิ ว ท์ ในระบบฐานข้ อ มู ล มั ก จะมี ลั ก ษณะเหมื อ นกั บ ฟิล ด์ ใ นแฟ้ มข้อมูล
สัญลักษณ์ จะใช้รูปวงรี (Ellipse) แอททริบิวท์ที่ไม่สามารถแยกข้อมูลออกเป็นข้อมูลย่อย ๆ
ได้อีกเช่น “รหัสนิสิต” ไม่สามารถที่จะแยกออกเป็นข้อมูลอื่น ได้อีก สัญลักษณ์ที่ใช้คือ
วงรีเส้นขอบเส้นเดี่ยว ภายในมีชื่อแอททริบิวท์ บรรจุอยู่ แอททริบิวท์ประเภทนี้เรียกว่า
Simple Attribute หรือ Atomic Attribute ส่วนแอททริบิวท์ที่สามารถแบ่งออกเป็น แอททริ
บิวท์ย่อย ๆ ได้อีก เช่น แอททริบิวท์ “ที่อยู่” สามารถแบ่งออกเป็น แอททริบิวท์ย่อยได้
เป็น บ้านเลขที่ ถนน ตาบล อาเภอ จังหวัด ประเทศ เป็นต้น แอททริบิวท์ประเภทนี้
เรียกว่า Composite Attribute สัญลักษณ์ที่ใช้ คือ วงรีเส้นขอบ เส้นเดี่ยว แต่มีวงรีย่อยมา
เชื่อมต่อ
2.4 ความสัมพันธ์ระหว่างเอนทิตี (Entity Relationship)
ความสั ม พั น ธ์ ร ะหว่ า งเอนทิ ตี มี สั ญ ลั ก ษณ์ เ ป็ น รู ป ขนมเปี ย กปู น (Diamonds)
ความสัมพันธ์ระหว่างเอนทิตี มี 3 แบบด้วยกันคือ แบบ One-to-One (1 : 1) One-to-
Many (1 : M) และ แบบ Many-to-Many (M : M หรือ M : N)
แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 47

2.5 ข้อจากัดหรือข้อกาหนด (Constraints)


หมายถึงกฎเกณฑ์หรือข้อตกลงของข้อมูลเพื่อเกิดความมั่นใจในความเป็นอันหนึ่ง
อันเดียวกัน หรือเกิดความสอดคล้องตรงกันของข้อมูล ข้อจากัดส่วนใหญ่จะอยู่ในรูปแบบ
ของกฎเกณฑ์ต่าง ๆ เช่นคะแนนเฉลี่ยของนิสิตจะอยู่ระหว่าง 0.00 - 4.00
แบบจาลองฐานข้อมูลจะมีส่วนประกอบหลัก 3 ส่วนด้วยกันคือ
2.5.1 ส่ว นโครงสร้ า ง (Structural Part) เป็นส่วนที่ ป ระกอบด้ ว ยกลุ่ ม
สัญลักษณ์ กฎระเบียบ ที่เห็นพ้องต้องกันเพื่อใช้ในการสร้างฐานข้อมูล เช่น การจัดเก็บ
ข้อมูลในรูปแบบของตาราง (Table) ส่วนที่ใช้แทนข้อมูลต่าง ๆ ที่ประกอบกันเป็นฐานข้อมูล
เช่น รูปสี่เหลี่ยม ใช้แทนเอนทิตีเซต รูปวงรี ใช้แทนแอททริบิวท์ รูปสี่เหลี่ยมขนมเปียกปูน
ใช้แทนรีเลชันชิพ และ รูปเส้นตรง ใช้แทนการเชื่อมต่อของแอททริบิวท์กับเอนทิตีเซต และ
การเชื่อมต่อของเอนทิตีเซตกับ รีเลชันชิพ เป็นต้น
2.5.2 ส่ ว นปรั บ ปรุ ง (Manipulative Part) เป็ น ส่ ว นที่ ก าหนดชนิ ด ของ
การปฏิบัติ การต่าง ๆ ที่เกี่ยวกับข้อมูล ประกอบไปด้วยการปรับปรุงข้อมูล การเรียกดู
ข้อมูลจากฐานข้อมูล การเปลี่ยนแปลงโครงสร้างของฐานข้อมูล เป็นต้น
2.5.3 กฎความคงสภาพ (Integrity Rules) เป็นกฎเกณฑ์ที่ใช้ควบคุม
ความถูกต้องของข้อมูลภายในฐานข้อมูล เพื่อให้เกิดความมั่นใจในความถูกต้องก่อนการ
บันทึกข้อมูล

3. วิวัฒนำกำรของแบบจำลองข้อมูล (Evolution of Data Models)


การคิดหาวิธีในการจัดการข้อมูลที่ดี จะนาไปสู่การพัฒนาแบบจาลองข้อมูลที่มี
ความหลากหลายและมี ป ระสิ ท ธิ ภ าพในการท างาน ในยุ ค แรก ๆ ก่ อ นที่ จ ะได้ น าเอา
คอมพิวเตอร์มาช่วยการทางานในด้านการบันทึกการจัดเก็บข้อมูล การจัดเก็บข้อมูลจะอยู่
ในรูปแฟ้มเอกสารต่าง ๆ ซึ่งแต่ละหน่วยงานก็จะมีแฟ้มข้อมูลของตนเอง ต่อมาเมื่อมีการ
นาคอมพิวเตอร์มาใช้ในการประมวล ผลข้อมูล การเก็บรวบรวมข้อมูลเปลี่ยนมาอยู่ในรูป
ของการจัดเก็บข้อมูลบน สื่อบันทึกข้อมูลอิเล็กทรอนิกส์ต่าง ๆ สื่อบันทึกข้อมูลเหล่านี้
สามารถจุข้อมูลได้หลายล้านตัวอักษร จึ งเป็นการประหยัดเนื้อที่ในการเก็บรวบรวมข้อมูล
และการประมวลผลข้อมูลที่จัดเก็บไว้บน สื่ออิเล็กทรอนิกส์เหล่านี้ สามารถกระทาได้อย่าง
สะดวก รวดเร็ว ทันเวลา ทันต่อการไปใช้งาน
แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 48

การสร้างแบบจาลองข้อมูลและฐานข้อมูลได้มีก ารพัฒ นาร่ว มกั น อาจจะสรุ ป


ประวัติความเป็นมาหรือวิวัฒนาการแบบจาลองข้อมูลได้เป็น 5 รุ่น (Generations) ด้วยกัน
ดังนี้
3.1 รุ่นที่ 1 ระบบแฟ้มข้อมูล (File System) (ปี ค.ศ 1960 – 1970)
แบบจาลองข้อมูลในยุคแรก คือระบบแฟ้มข้อมูล ซึ่งเป็นการรวบรวมและการใช้
งานไฟล์ตา่ ง ๆ ที่เกี่ยวข้องกัน มีการควบคุมโครงสร้างของไฟล์เพื่อให้ใช้งานร่วมกันได้อย่าง
มีประสิทธิภาพ ระบบนี้มีการประมวลผลข้อมูลที่สามารถทาได้อย่างรวดเร็ว โปรแกรม
ประยุกต์แต่ละโปรแกรมสามารถควบคุมการใช้ข้อมูลในไฟล์ของตนเองได้ และการใช้งานก็
ไม่ ยุ่ ง ยาก ไฟล์ ต่ า ง ๆ มี ค วามปลอดภั ย และความคล่ อ งตั ว ในการประมวลผลสู ง ถ้ ำ มี
ผูใ้ ช้งำนเพียงแค่คนเดียว ตัวอย่าง เช่น VMS/VSAM

E Entity Set E Weak Entity Set

R Relationship Set A Multivalued Attribute

A Attribute
Composite Attribute

ภาพที่ 3.1 แสดงสัญลักษณ์ตา่ งๆ ของแบบจาลองข้อมูล


(ที่มา : https://www.google.co.th/search?q=entity+set+symbol&espv=2&source)

โปรแกรม การใช้งานในแต่ล ะหน่ วย งานก็ มีความแตกต่ า งกั น ในการพั ฒ นา


โปรแกรมจะทาให้เสียค่าใช้จ่ายเพิ่ม และการจัดเก็บข้อมูลแบบระบบแฟ้มข้อมูลนี้ อาจจะ
ก่อให้เกิดปัญหาหลายประการ เช่น ความซ้าซ้อนของข้อมูล (Data Redundancy) ความไม่
สอดคล้องกันของข้อมูล (Data Inconsistency)ความไม่ปลอดภัยของข้อมูล (Poor Security)
ขาดบู ร ณภาพของข้ อ มู ล (Lack Of Data Integrity) ข้ อ มู ล แยกเป็ น อิ ส ระต่ อ กั น (Data
Isolation) และโปรแกรมประยุ ก ต์ กั บ โครงสร้ า งของแฟ้ ม ข้ อ มู ล ( Application/Data
Dependence) ไม่มคี วามเป็นอิสระต่อกัน
แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 49

Attribute Component
of key

Entit Relationship Entit Attribute


y y
Multivalued
1 Cardinality : 1 attribute

Identifying
Relationshi
p

N Cardinality : N
Total participation

Attribute Component
Weak ------- of weak key

ภาพที่ 3.2 แสดงองค์ประกอบแบบจาลองข้อมูล


(ที่มา : https://www.google.co.th/search?q=entity+set+symbol&espv=2&source)

3.2 รุ่นที่ 2 แบบจาลองข้อมูลแบบลาดับชัน้ (Hierarchical Model) และแบบจาลอง


ข้อมูลแบบเครือข่าย (Network Model) (ช่วงเวลา ค.ศ 1970)
แบบจำลองข้อมูลแบบลำดับชัน้ ได้เริ่มพัฒนาขึ้นมาในปลายปี ค.ศ 1960 เพื่อแก้ไข
ปัญหาการเก็บข้อมูลด้วยระบบแฟ้มข้อมูล และจัดการกับปริมาณของข้อมูลที่มเี ป็นจานวน
มาก และมีความซับ ซ้อนขึ้นเรื่อย ๆ โครงสร้างแบบจาลองนี้จะมีลักษณะเป็นลาดับชั้น
คล้าย ๆ กับต้นไม้ หัวกลับ (Upside-Down Tree) แต่ละชั้นอาจจะประกอบไปด้วยหลาย ๆ
ส่วน (Segment) โดยที่ส่วนที่อยู่ด้านบน นิยมเรียกกันว่า “Parent Segment” ส่วนที่อยู่ถัด
ลงมาจะเป็น “Children Segment” ซึ่ง ส่วนนี้จะมีได้หลายส่วนย่อย แต่จะมีเพียง “Parent
Segment” เดียวเท่านั้น
แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 50

แบบจาลองฐานข้อมูลลาดับชั้นมีข้อดี คือสามารถกาหนดกฎเกณฑ์ที่ใช้ควบคุม
ความถูกต้องให้กับข้อมูลภายในฐานข้อมูลได้ง่าย เหมาะกับระบบคอมพิวเตอร์ที่มีขนาด
ใหญ่ แต่ข้อเสียของแบบจาลองฐาน ข้อมูลแบบลาดับ ชั้น คือขาดความยืดหยุ่นในการ
ทางาน ถ้ามี การเปลี่ยนแปลงโครงสร้างของข้อมูลในแบบจาลองจะส่งผลให้มีการแก้ไข
โปรแกรม และแบบจาลองนี้มีโครงสร้างที่เหมาะกับข้อมูลที่มีความสัมพันธ์ในแบบหนึ่งต่อ
กลุ่มหรือ 1 : M แบบ(One-to-Many) เท่านั้น
แบบจำลองข้อมูลแบบเครือข่ำย ได้เริ่มพัฒนาขึ้นมาในปลายปี ค.ศ 1960 เช่นกัน
โดย C.W. Bachman (Bachman 1965) เพื่อเป็นตัวแทนของความสั มพันธ์ ของข้ อ มู ล ที่ มี
ความซับซ้อน และพัฒนาประสิทธิภาพการทางานให้ดีกว่าแบบจาลองข้อมูลแบบลาดับ
ชั้น แบบจาลองแบบเครือข่ายนี้ ความสัมพันธ์จะเรีย กว่า เซต (set) ในแต่ละเซตจะ
ประกอบด้วยเรคคอร์ดอย่างน้อย 2 ประเภท คือ owner และ member ซึ่งความสัมพันธ์ที่
เกิดขึ้นอาจจะเป็นแบบ 1 : N หรือ M : N (หมายถึง Member สามารถมีความสัมพันธ์กับ
Owner ได้หลาย Owner) ตัวอย่างเช่น IMS, ADABAS และ IDS-II
ข้อดีของแบบจาลองแบบเครือข่ายคือ สนับสนุนความสัมพันธ์แบบ M : M ความ
ซับซ้อนของข้อมูลเกิดขึ้นน้อยกว่าแบบลาดับชั้น สามารถเชื่อมโยงข้อมูลแบบไปกลับได้
และมี ความยืดหยุ่นในการค้นหาข้อมูล แต่ก็ยังมีข้อเสียคือการเปลี่ยนแปลงในโครงสร้าง
ยังมีความยุ่งยากเมื่อมีความต้องการข้อมูลสารสนเทศที่มากขึ้น ความปลอดภัยของข้อมูล
มีน้อย เพราะสามารถเข้าถึงข้อมูลได้โดยตรง
3.3 รุ่นที่ 3 แบบจาลองข้อมูลเชิงสัมพันธ์ (Relational Model) (ปี ค.ศ 1970 –
ปัจจุบัน)
จากปัญหาที่เกิดขึ้นดังกล่าว จึงเป็นสาเหตุให้มีการพัฒนาแบบจำลองข้อมูลเชิง
สัมพันธ์ ขึ้น โดย E. F. Codd ในช่วงทศวรรษ 1970-1980 (Codd 1970) แบบจาลองนี้จะ
ช่ ว ยลดปั ญ หาและอุ ป สรรคของการสื่ อ สารระหว่ า งผู้ อ อกแบบ และผู้ ใ ช้ ง านระบบ
ฐานข้อมูล
แนวความคิ ด พื้ น ฐานของแบบจ าลองข้ อ มู ล เชิ ง สั ม พั น ธ์ เป็ น แนวคิ ด ทาง
คณิตศาสตร์เรื่องของความสัมพันธ์ (Relation) ซึ่งเป็นเมทริกซ์หรือตาราง (Table) ของ
ข้อมูล ที่ประกอบไปด้วย การรวมกันระหว่างแถว (Rows) และ คลอลัมน์ (Columns) ทา
แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 51

ให้เข้าใจได้ง่าย สามารถแสดงความสัมพันธ์ได้ทั้งแบบ 1 : 1 , 1 : M และ M : M และใช้


ระบบคีย์ (Keys) ในการเชื่อมความสัมพันธ์ หรือ การอ้างอิงกับตารางอื่น
แบบจาลองข้อมูลเชิงสัมพันธ์ สามารถดาเนินการฟังก์ ชันพื้นฐานได้เหมือนกับ
แบบจาลองข้อมูลแบบลาดับชั้น และแบบเครือข่าย แต่มีข้อได้เปรียบจากแบบจาลองทั้ง
สองแบบหลายประการด้วยกันคือ โครงสร้างของฐานข้อมูลมีความอิสระจากโปรแกรม
ความซับซ้อนของข้อมูลมีน้อยมาก สามารถสื่อสารและเข้าใจได้ง่าย มีระบบรักษาความ
ปลอดภัยที่ดี เพราะผู้ใช้งานไม่ต้องทราบถึงโครงสร้างของการเก็บข้อมูลภายในฐานข้อมูล
แต่ในการดาเนินการดังกล่าวต้องมีการลงทุนสูงเนื่องจากต้องใช้ฮาร์ดแวร์และ ซอฟท์แวร์
ที่มคี วามสามารถสูง ตัวอย่างเช่น DB2, Oracle และ MS SQL-Server
ถึงแม้ว่าแบบจาลองข้อมูลเชิงสัมพันธ์จะถูกพัฒนาเพื่อปรับปรุงการทางานของ
แบบจาลองแบบลาดับ ชั้นและแบบเครือข่าย แต่แบบจาลองข้อมูลเชิงสัมพันธ์ยังขาดเค้า
โครงที่จะทาให้การสร้างเครื่องมือสาหรับออกแบบฐานข้อมูลได้อย่างมีประสิทธิภาพ การ
แสดงโครงสร้างแบบจาลองด้วยแผนภาพจะทาให้ผู้ออกแบบและผู้ใช้งานฐานข้อมูลเข้าใจ
แบบจาลองข้อมูลได้ง่ายกว่าการใช้ตัวอักษร ด้วยสาเหตุนี้เอง จึงได้มีก ารคิดค้น และ
พัฒนาแบบจำลองควำมสัมพันธ์ เอนทิตี (Entity Relationship Model, ERM) ขึน้ มาในการ
สร้างแบบจาลองข้อมูลสาหรับการออกแบบฐานข้อมูล
ในปี 1976 โดย Peter Chen ได้พัฒนาแบบจาลองความสัมพันธ์เอนทิตี ขึ้นมาในปี
ค.ศ 1976 แบบจาลองนี้ประกอบไปด้วย 2 ส่วน คือ
3.3.1 เอนทิตี เป็นส่วนที่ใช้จัดเก็บข้อมูล แต่ละเอนทิตีจะสามารถอธิบาย
ได้ดว้ ยเซตของแอททริบิวท์ที่บ่งบอกถึงคุณลักษณะของเอนทิตีนนั้ ๆ
3.3.2 ความสัมพันธ์ เป็นสิ่งที่ใช้อธิบายเกี่ยวกับความสัมพันธ์หรือการ
เชื่อมโยงกันของข้อมูล ความสัมพันธ์ส่วนใหญ่จะอธิบายถึงความสัมพันธ์ของเอนทิตีทั้ง
แบบ 1:1,1:M และ M:M
3.4 รุ่นที่ 4 แบบจาลองข้อมูลเชิงวัตถุ (Object - Oriented Database Model)
(ค.ศ 1980 – ปัจจุบัน)
แบบจาลองข้อมูลเชิงวัตถุ เป็นแบบจาลองข้อมูลที่พัฒนาต่อจากแบบจาลองข้อมูล
เชิงสั มพั นธ์ มีแนวคิด มาจากของการเขีย นโปรแกรมเชิง วัตถุ ที่ม องของทุก สิ่งเป็ น วั ต ถุ
(Object) วัตถุนี้จะมีลักษณะคล้าย ๆ กับเอนทิตี ในแบบจาลองข้อมูลอื่นที่กล่าวมาแล้ว แต่
แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 52

วัตถุหนึ่ง ๆ จะใช้ในการแสดงถึงการเกิดขึ้นครั้งหนึ่ง ๆ ของข้อมูลในเอนทิตีเท่านั้น โดยที่


วัตถุแต่ละวัตถุ จะเป็นแหล่งรวมของข้อมูลและการปฏิบัติงาน มีคลาส (Class) หรือกลุ่ม
ของวัตถุที่มีความเหมือนกันใน แอททริบิวท์ เป็นตัวกาหนดคุณสมบัติของวัตถุ รวมทั้ง
คุณสมบัติการปกปิดความลับของวัตถุ สามารถจัดเก็บข้อมูลและเรียกดูข้อมูลได้อย่าง
สะดวกและรวดเร็ว
ข้อดีของแบบจาลองเชิงวัตถุ คือสามารถจัดการกับข้อมูลที่มีความซับซ้อนเช่น
กราฟิค (Graphic) วิดีโอ (VDO) หรือเสียง (Voice) ได้เป็นอย่างดี และที่สาคัญคือสนับสนุน
คุณสมบัติของการนากลับมาใช้ใหม่ (Re Useable) แต่แบบจาลองเชิงวัตถุนี้ มีคา่ ใช้จ่ายสูง
เพราะต้องอาศัยบุคลากรที่มีความรู้และประสบการณ์มากในการจัดการกับฐานข้อมูลชนิด
นี้ และยังไม่มีมาตรฐานรองรับ ตัวอย่างเช่น VFS/Fast Objects, Objectivity/DB, DB2 UDB
และ Oracle 10g
ช่วงเวลำ (Timeline)

1960s 1970s 1980s 1990s 2000+


File-based
Hierarchical
Network Object-oriented
Relational Web-based
Entity-Relationship

Y2k
1990
1980
1970
1960
1950

Pre- File Hierarchical Network Relational Object Object Relational


1950 system

ภาพที่ 3.3 แสดงวิวัฒนาการของแบบจาลองข้อมูล


(ที่มา : https://www.pinterest.com/pin/191825265356325311/)
แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 53

3.5 รุ่นที่ 5 รุ่นอนาคต (Next Generation) แบบจาลองข้อมูล XML (ปัจจุบัน –


อนาคต) เช่น dbXML, Tamino, DB/2 UDB, Oracle 10g และ MS SQL-Server ใช้สาหรับ
XML Documents

4. คุณลักษณะพื้นฐำนและประเภทของแบบจำลองข้อมูล
จะเห็ น ได้ ว่ า วิ วั ฒ นาการของระบบจั ด การฐานข้ อ มู ล ยั ง คงมี อ ยู่ อ ย่ า งต่ อ เนื่ อ ง
เนื่องจากความต้องการที่จะมีวิธีการสร้างแบบจาลองใหม่ ๆ ที่สามารถเพิ่มการรองรับ
ข้อมูลที่มีความสลับ ซับซ้อนและมีเป็นจานวนมาก แบบจาลองข้ อมูลไม่ว่าจะเป็นแบบใด
จะต้องมีคุณสมบัติบางอย่างที่เหมือนกันหรือคล้ายกัน อาจจะถือได้ว่าเป็นคุณลักษณะ
พืน้ ฐานสาคัญของแบบจาลองข้อมูล
4.1 คุณลักษณะพืน้ ฐานสาคัญของแบบจาลองข้อมูล
4.1.1 สามารถแสดงถึ ง ระดั บ ของความง่ า ยของกรอบความคิ ด โดยไม่
สูญเสียความครบถ้วนของความหมายของฐานข้อมูล
4.1.2 สามารถให้กรอบความคิดที่ใกล้เคีย งความจริงมากที่สุดเท่ าที่จ ะ
เป็นไปได้
4.1.3 การเปลี่ยนแปลงหรือเปลี่ยนรูปข้อมูลจะต้องเป็นไปตามกฎความ
สอดคล้องและความสมบูรณ์ของข้อมูล

ปัจจุบันการออกแบบจาลองข้อมูล จะมุ่งเน้นที่การแก้ไขจุดอ่อน ของแบบจาลอง


ก่อนหน้า เช่นแบบจำลองข้อมูลแบบเครือข่ำย ได้พัฒนาขึ้นมาเพื่อแทนที่แบบจำลองข้อมูล
แบบลำดับชัน้ โดยที่แบบจาลองข้อมูลแบบเครือข่าย จะสามารถปรับเปลี่ยนความสัมพันธ์
ที่ซับซ้อนให้มี ความง่ายมากขึ้น แบบจำลองข้อมูลเชิงสัมพันธ์ จะมีประโยชน์มากกว่า
แบบจาลองแบบเครือข่ายในหลาย ๆ ด้าน เช่น การแสดง ข้อมูลด้วยวิธีการที่งา่ ย ความไม่
สอดคล้องของข้อมูลมีน้อยกว่า และการประยุ กต์ใช้ภาษาคิวรีในการเข้าถึงข้อมูล และ
แบบจำลองข้อมูลเชิงวัตถุได้พัฒนาต่อจากแบบจาลองข้อมูลเชิงสัมพันธ์ โดยการเพิ่มเติม
แนวความคิดเชิงวัตถุ ที่จะช่วยให้สามารถจัดการกับข้อมูลที่มคี วามซับซ้อนได้
แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 54

4.2 คุณลักษณะของแบบจาลองข้อมูลที่ดี ควรมีลักษณะดังนี้


4.2.1 มีความเข้าใจได้ง่าย แบบจาลองข้อมูลที่ดีควรที่จะต้องใช้กฎเกณฑ์
ทั่ว ๆ ไป จะทาให้เข้าใจได้ง่าย โดยมีขอ้ มูลแอททริบิวท์ที่อธิบายในรายละเอียดของแต่ละ
เอนทิตี
4.2.2 มีสาระสาคัญและไม่ซ้าซ้อน แอททริบิวท์ในแต่ละเอนทิตี จะต้อง
มีสาระสาคัญ ไม่ควรมีขอ้ มูลที่ซ้าซ้อนกัน
4.2.3 มีความยืดหยุ่นและง่ายต่อการปรับปรุง แบบจาลองข้อมูลที่ดีตอ้ ง
มีความยืดหยุ่น และง่ายต่อการปรับปรุง หรือการพัฒนาในอนาคต และไม่ควรขึ้นอยู่กับ
แอปพลิเคชันโปรแกรม
4.2.4 มีความเป็นอิสระของข้อมูล คือผู้ใช้สามารถเปลี่ยนแปลงข้อมูลใน
ระดับแนวความคิด(เชิงตรรกะ) หรือระดับภายใน (เชิงกายภาพ) ได้ โดยที่ไม่กระทบกับ
โปรแกรม และผู้ใช้ยังคงสามารถใช้งานได้ และมองเห็นโครงสร้างข้อมูลในระดับภายนอก
ได้เหมือนเดิม
4.3 ประเภทของแบบจาลองข้อมูล
อาจจะกล่าวสรุปได้ว่าแบบจาลองข้อมูลเป็นเครื่องมือที่ใช้อธิบายโครงสร้าง และ
ความสัมพันธ์ระหว่างข้อมูลต่าง ๆ ที่อยู่ในฐานข้อมูลจากรูปแบบที่เป็นแนวความคิดซึ่ง
เข้ า ใจ ได้ ย ากให้ อ ยู่ ใ นรู ป แบบที่ เ ข้ า ใจได้ ง่ า ยขึ้ น และสะดวกในการใช้ อาจจะแบ่ ง
แบบจาลองข้อมูลออกได้เป็น 2 ประเภท คือ
4.3.1 แบบจ าลองข้ อ มู ล เชิ ง แนวคิ ด (Conceptual Data Models) เป็ น
แบบจาลองที่ประกอบไปด้วยสัญลักษณ์ที่ใช้อธิบายแทนตัวข้อมูล คุณสมบัติของข้อมูล
และความสัมพันธ์ของข้อมูล ความสัมพันธ์ต่าง ๆ ใช้อธิบายภาพหรือลักษณะโดยรวมของ
ข้ อ มู ล ทั้ ง หมดในระบบโดยแสดงในรู ป ของแผนภาพ ซึ่ ง ประกอบด้ ว ยเอนทิ ตี ต่ า ง ๆ
ความสัมพันธ์ระหว่างเอนติตีของแบบจาลองเชิงแนวคิดนี้ ต้องการนาเสนอให้เกิดความ
เข้าใจระหว่างผู้ออกแบบและผู้ใช้งาน ผู้ที่สามารถเข้าไปแก้ไขโครงสร้างข้อมูลนี้ได้ คือ
ผูบ้ ริหารฐานข้อมูล หรือโปรแกรมเมอร์
แบบจ าลองข้ อ มู ล เชิ ง แนวคิ ด มั ก ถู ก น าไปใช้ ใ นการออกแบบฐานข้ อ มู ล เพื่ อ
ต้องการอธิบายให้เห็นว่าภายในฐานข้อมูลจะประกอบด้วยข้อมูลอะไรบ้าง และแต่ละข้อมูล
นั้นมีความสัมพันธ์กันอย่างไร ตัวอย่างแบบจาลองข้อมูลประเภทนี้ เช่น แบบจาลองข้อมูล
แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 55

E-R (Entity-Relationship Model) และแบบจาลองข้อมูลเชิงวัตถุ (Object-Oriented Model)


เป็นต้น
4.3.2 แบบจาลองข้อมูลแบบนาไปใช้ (Implementation Data Models) เป็น
แบบจาลองข้อมูลที่อธิบายถึงโครงสร้างข้อมูลของฐานข้อมูล ที่แสดงถึงรูปแบบที่อิง กับ
ระบบ การจัดการฐานข้อมูลที่เลือกใช้งาน และเป็นแบบจาลองที่ถูกนามาใช้ในขั้นตอน
การสร้างฐานข้อมูล ตัวอย่างแบบจาลองข้อมูลประเภทนี้ เช่น แบบจาลองข้อมูลแบบ
ลาดับชั้น (Hierarchical Model) แบบจาลองข้อมูลแบบเครือข่าย (Network Model) และ
แบบจาลองข้อมูลเชิงสัมพันธ์ (Relational Model) เป็นต้น

5. ควำมสัมพันธ์ระหว่ำงเอนทิตี (Entity Relationships)


ความสัมพันธ์ในที่น้ีจะหมายถึง ความสัมพันธ์ระหว่างเอนทิตี หรือระหว่างข้อมูลที่
เราสนใจ ซึ่ ง พิ จ ารณาได้ 2 แบบ คื อ ความสั ม พั น ธ์ แ บบจ ำเป็ น หรื อ แบบบั ง คั บ
(Mandatory) หมายถึงความสัมพันธ์ที่จะต้องมี หรือ จะต้องเกิดขึ้นอย่างแน่นอน แทนด้วย
สัญลักษณ์ เส้นตรงทึบ หรือ เส้นตรงสองเส้น และความสัมพันธ์แบบ ไม่จำเป็น (Optional)
เป็นความสัมพันธ์ที่อาจจะมีหรือไม่ มีก็ได้ แทนด้วยสัญลักษณ์เส้นตรงประหรือ เส้นตรง
หนึ่งเส้น ดังภาพ

A B

A B

ภาพที่ 3.4 แสดงสัญลักษณ์เส้นความสัมพันธ์ระหว่างเอนทิตี


จากภาพอธิบายได้ดังนี้ : ถ้าข้อมูล A มีความสัมพันธ์กับ ข้อมูล B อย่ำงแน่นอน
หรืออย่างน้อยจะต้องมีสมาชิก (Element) ของข้อมูล A หนึ่งสมาชิกที่มีความสัมพันธ์กับ
สมาชิกของข้อมูล B และแทนความสัมพันธ์ด้วยเส้นตรงทึบออกจากข้อมูล A ไปยังข้อมูล B
แต่ในขณะเดียวกันข้อมูล B อำจจะมีความสัมพันธ์กับข้อมูล A หรือไม่มีก็ได้ เส้นตรงที่
ออกจากข้อมูล B จึงแทนด้วยเส้นประ
แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 56

ถ้ากาหนดให้ A และ B เป็นข้อมูลหรือสิ่งที่สนใจ (Object of Interest) สัญลักษณ์ที่


ใช้แทนชนิด ความสั มพันธ์ระหว่างข้อมูล A กั บ ข้อมูล B คือ เส้นตรงเส้นเดีย วหรือจะใช้
ลูกศร 1 หัว กับ 2 หัว สามารถที่จะแสดงชนิดความสัมพันธ์ระหว่างข้อมูล A กับข้อมูล B
ได้ดังนี้
5.1 ความสัมพันธ์แบบหนึ่งต่อหนึ่ง (One to One Relationships, 1 : 1 ) เป็นการ
แสดงความสัมพันธ์ของข้อมูลของเอนทิตีหนึ่ง ว่ามีความสัมพันธ์กับข้อมูลในอีกเอนทิตีหนึ่ง
ในลักษณะหนึ่งต่อหนึ่ง คือข้อมูลหนึ่งข้อมูลของเอนทิตี ที่หนึ่งมีความสัมพันธ์กับข้อมูลใน
เอนทิตที ี่สองเพียงข้อมูลเดียวเท่านั้น เช่นข้อมูล A จะเกี่ยวข้องสัมพันธ์กับข้อมูล B ได้เพียง
1 ค่าเท่านั้น และ ข้อมูล B จะเกี่ยวข้องกับข้อมูล A ได้เพียง 1 ค่าเช่นกัน
ตัวอย่างเช่น มีเอนทิตี 2 เอนทิตี คือ “อาจารย์” และ “คณะวิชา” มีความสัมพันธ์
กันชื่อ “บริหาร” แบบ 1 : 1 หมายถึง อาจารย์ 1 คน จะสามารถบริหาร หรื อเป็นคณบดีได้
พียง 1 คณะวิชาเท่านั้น และในขณะเดียวกัน แต่ละคณะวิชา ก็จะมีคณบดี ได้เพียง 1 คน
เช่นกัน หรือควำม สัมพันธ์ระหว่ำงนิสิตกับรหัสนิสิต จะเป็นแบบ 1 : 1 เพราะนิสิต 1 คน
จะมีรหัสนิสิตได้เพียง 1 รหัสเท่านั้น และในขณะเดียวกันรหัสนิสิต 1 รหัส จะใช้กับ นิสิตได้
เพียง 1 คนเช่นกัน

A B

ภาพที่ 3.5 แสดงความสัมพันธ์แบบหนึ่งต่อหนึ่ง

ตัวอย่ำง
• ควำมสัมพันธ์ระหว่ำงข้อมูลนิสติ กับรหัสนิสิต : นิสติ 1 คน จะมีรหัส
นิสติ ได้เพียง 1 รหัสเท่านั้น ในขณะเดียวกันรหัสนิสิต 1 รหัส จะใช้กับ
นิสติ ได้เพียง 1 คนเช่นกัน
• ควำมสัมพันธ์ระหว่ำงคณบดีกับคณะวิชำ : คณบดี 1 คน จะบริหาร
คณะวิชาได้เ พียง 1 คณะวิชาเท่านั้น ในขณะเดีย วกัน คณะวิชา 1
คณะ จะมีคณบดีบริหารได้เพียง 1 คนเช่นกัน
แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 57

1 1
นิสติ รหัสนิสิต
1:1
1 1
คณบดี คณะวิชา
1:1

ภาพที่ 3.6 แสดงตัวอย่างความสัมพันธ์แบบหนึ่งต่อหนึ่ง หรือ 1 : 1

5.2 ความสัมพันธ์แบบหนึ่งต่อกลุ่ม (One to Many Relationships,1:N หรือ 1:M)


เป็นความสัมพันธ์ระหว่างเอนทิตีหนึ่ง ไปมีความสัมพันธ์กับอีกเอนทิตีหนึ่งได้มากกว่าหนึ่ง
รายการ ในลักษณะหนึ่งต่อกลุ่ม (ข้อมูลหนึ่งข้อมูลของเอนทิตีที่หนึ่ง มีความสัมพันธ์กับ
ข้อมูล ในเอนทิตี ที่ ส องหลายข้ อ มูล) เช่นข้อมูล “A” มีความสัมพั นธ์กั บ ข้ อมู ล “B” ได้
มากกว่าหนึ่งรายการ
ความสั มพั นธ์ แบบนี้ข้อมูล A จะเกี่ย วข้องกั บ ข้อมูล B ได้มากกว่า 1 ค่า แต่
ข้อมูล B จะเกี่ยวข้องกับข้อมูล A ได้มากที่สุดเพียง 1 ค่าเท่านั้น

A B

ภาพที่ 3.7 แสดงความสัมพันธ์แบบหนึ่งต่อกลุ่ม

ตัวอย่ำง
• ควำมสัมพันธ์ระหว่ำงแม่กับลูก : แม่หนึ่งคนอาจจะมีลูก ได้หลายคน แต่
ลูก 1 คนจะมีแม่ได้เพียงคนเดียวเท่านั้น
• ควำมสัมพันธ์ระหว่ำงอำจำรย์ที่ปรึกษำกับนิสิต : อาจารย์ที่ปรึกษาหนึ่ง
คนจะมีนิสิตได้หลายคน แต่นิสิตคนหนึ่งจะมีอาจารย์ที่ปรึกษาได้เพียง 1
คนเท่านั้น
แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 58

1 M
แม่ ลูก
1:M

1 M
อาจารย์
ที่ปรึกษา นิสิต
1:M

ภาพที่ 3.8 แสดงตัวอย่างความสัมพันธ์แบบหนึ่งต่อกลุ่ม หรือ 1 : M

5.3 ความสั ม พั น ธ์ แ บบกลุ่ ม ต่ อ หนึ่ ง (Many to One Relationships, M :1)


ความสัมพันธ์แบบกลุ่มต่อหนึ่ง เช่น ข้อมูล A จะเกี่ยวข้องกับข้อมูล B ได้เพียง 1 ค่า และ
ข้อมูล B จะเกี่ยวข้องกับข้อมูล A ได้หลายค่า โดยปกติแล้วความสัมพันธ์แบบ M : 1 หรือ
1 : M มักจะรวมไว้เป็นแบบเดียวกัน คือเป็นความสัมพันธ์ระหว่างหนึ่งต่อกลุ่ม

ตัวอย่ำง
• ควำมสัมพันธ์ระหว่ำงนิสิตกับคณะวิชำที่สังกัด : สถาบันการศึกษาหนึ่ง
สามารถมีคณะวิชาได้มากว่าหนึ่งคณะวิชา แต่นิสติ หนึ่งคน จะสังกัดคณะ
วิชาได้เพียงคณะวิชาเดียวเท่านั้น

คณะวิชา นิสิต
M:1
ภาพที่ 3.9 แสดงความสัมพันธ์แบบกลุ่มต่อหนึ่ง หรือ M : 1

5.4 ความสัมพันธ์แบบกลุ่มต่อกลุ่ม (Many to Many Relationships , M : N)


เป็นความสัมพันธ์แบบหลายรายการระหว่างสองเอนทิตี เป็นความสัมพันธ์ของ
ข้อมูลของเอนทิตีหนึ่งมีความสัมพันธ์กับข้อมูลในอีกเอนทิตีหนึ่ง ในลักษณะกลุ่มต่อกลุ่ม
แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 59

เช่นข้อมูล “A” มีความสัมพันธ์กับอีกข้อมูล “B” ได้มากกว่าหนึ่งรายการ ในขณะ เดียวกัน


แต่ล ะรายการของข้อมูล “B” ก็ มีความสัมพันธ์กั บ ข้อมูล “A” ได้มากกว่าหนึ่งรายการ
เช่นเดียวกัน ตัวอย่างเช่น นิสิต 1 คน สามารถลงทะเบียนเรียนได้มาก กว่า 1 รายวิชา และ
รายวิชา 1 รายวิชาจะมีนิสติ ลงทะเบียน เรียนได้มากกว่า 1 คน เป็นต้น
ความสัมพันธ์แบบกลุ่มต่อกลุ่ม นี้ ข้อมูล A จะเกี่ยวข้องกับข้อมูล B ได้หลายค่า
และในทานองเดียวกันข้อมูล B เกี่ยวข้องกับข้อมูล A ได้มากกว่า 1 ค่าเช่นกัน

A B

ภาพที่ 3.10 แสดงความสัมพันธ์แบบกลุ่มต่อกลุ่ม หรือ M : N

ตัวอย่ำง :
• ควำมสัมพันธ์ระหว่ำงนิสิตกับรำยวิชำที่เปิดสอน : นิสิต 1 คนสามารถ
ลงทะเบียนเรียนได้หลายวิชา และวิชาหนึ่ง ๆ จะมีนิสิตลงทะเบียนเรียนได้
มากกว่า 1 คน
• ควำมสัมพันธ์ระหว่ำงตำรำงสินค้ำ และตำรำงใบสั่งซื้อ : ใบสั่งซื้อใบเดียว
สามารถที่จะมีรายการผลิตภัณฑ์ได้มากกว่าหนึ่งรายการ อย่างไรก็ตาม
สินค้ารายการเดียวสามารถที่จะปรากฏ ในใบสั่งซื้อหลายใบได้

ลงทะเบียนเรียน
N:M
นิสิต รายวิชา
N M

ภาพที่ 3.11 แสดงตัวอย่างความสัมพันธ์แบบกลุ่มต่อกลุ่ม หรือ M : N


แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 60

6. สถำปัตยกรรมฐำนข้อมูล (Database Architecture)


เมื่อเปรียบเทียบระหว่างฐานข้อมูลกับแฟ้มข้อมูล จะพบว่าฐานข้อมูลมีข้อดีกว่า
แฟ้มข้อมูลทั่วไป โดยเฉพาะในเรื่องของควำมเป็นอิสระข้อมูล เนื่องจากนระบบฐานข้อมูล
โปรแกรมประยุกต์ไม่ได้ขึ้นอยู่กับโครงสร้างของข้อมูลที่มีการเปลี่ยนแปลงไป เนื่องจาก
การจั ด โครงสร้ า งของระบบฐานข้ อ มู ล ด้ ว ยเหตุ นี้ ส ถาบั น มาตรฐานแห่ ง ชาติ ข อง
สหรัฐอเมริกา หรือ ANSI (American National Standards Institute) ซึ่งเป็นองค์กรสาคัญที่
ให้การสนับสนุนการพัฒนามาตรฐานทางเทคโนโลยีของสหรัฐอเมริกา จึงได้มกี ารกาหนด
มาตรฐานขึน้ ในปี 1975 เรียกว่าสถำปัตยกรรมสำมระดับ (Three-level Architecture) เป็น
การอธิบายรูป แบบ และรายละเอีย ดโครงสร้างที่ใ ช้กับ ระบบของฐานข้อมูลโดยรวมใน
ระดับต่าง ๆ ซึ่งจะไม่เกี่ยวข้องกับข้อมูลที่เก็บในฐานข้อมูลแต่ประการใด
สถาปัตยกรรมระบบฐานข้อมูลแบ่งเป็น 3 ระดับ คือ ระดับภายนอก ระดับแนวคิด
และระดั บ ภายใน สถาปัตยกรรมฐานข้อมูลในแต่ละระดับ จะมี DBMS ท าหน้าที่แปลง
ข้อมูล (Mapping) จากระดับหนึ่งไปสู่ระดับหนึ่ง ซึ่งจะก่อให้เกิดประโยชน์หลายด้าน เช่น
ถ้ามีการเปลี่ยนแปลงวิธีในการจัดเก็บข้อมูลในระดับกายภาพ ก็ไม่มีผลกระทบต่อการ
ออกแบบฐานข้อมูลในระดับแนวคิดแต่อย่างใด
6.1 สถาปัตยกรรมระดับภายใน (Internal Level หรือ Physical Level)
สถาปัตยกรรมระดับภายใน เป็นสถาปัตยกรรมระดับล่างสุด เป็นระดับของการ
จัดเก็บฐานข้อมูลในหน่วยเก็บข้อมูลสารองจริง มีการจัดเก็บข้อมูลด้วยหน่วยความจา
แบบใด จัดเก็บข้อมูลอย่างไร มีการดูแลรักษาอย่างไร มีโครงสร้างข้อมูลเป็นแบบใด
เพราะโครงสร้างข้อมูล แต่ล ะแบบ จะมีผลต่อประสิท ธิภาพของความเร็วในการเข้าถึง
(access) ข้อมูล
สถาปัตยกรรมระดับภายใน จะทางานเชื่อมต่อกับระบบการจัดการข้อมูลเกี่ยวกับ
วิธีการจัดเก็บและวิธีการเข้าถึงข้อมูล โดยมีระบบการจัดการฐานข้อมูลเป็นตัวช่วยในการ
กาหนดวิธีการเข้าถึงข้อมูล การค้นหา การปรับปรุง การเชื่อมโยงระหว่างตาราง รวมทั้ง
การบารุงรักษาฐานข้อมูล ผู้ที่เกี่ยวข้องส่วนใหญ่ คือ ผู้ออกแบบ ผู้ดูแลระบบ ผู้เขีย น
โปรแกรมประยุกต์ และผูบ้ ริหารฐานข้อมูล ผู้ใช้ทั่วไปไม่มสี ิทธิ์เข้ามายุ่งในระดับนี้
แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 61

6.2 สถาปัตยกรรมระดับแนวคิด (Conceptual Level)


สถาปัตยกรรมระดับแนวคิดเป็นมุมมองโครงร่างของฐานข้อมูลในแนวความคิด ซึ่ง
ไม่ใช่โครงร่างจริงที่ถูกสร้างในอุปกรณ์เก็บข้อมูลผ่านการวิเคราะห์จากนักออกแบบระบบ
และผู้บ ริหารฐานข้อมูล สถาปัตยกรรมในระดับ แนวคิดจึงเป็นระดับ ของการออกแบบ
ฐานข้อมูลว่าจะเก็บข้อมูลอะไร ฐานข้อมูลที่สร้างประกอบด้วยเอนทิตีอะไรบ้าง แต่ละ
เอนทิตี ประกอบด้วยเขตข้อมูลหรือแอททริบิวท์ ใดบ้าง และความสัมพันธ์แต่ละเอนทิตีเป็น
อย่างไร ผลลัพธ์ที่ได้ทาให้เกิด สกีมา (Schema) หรือ โครงสร้ำงข้อมูล อาจกล่าวได้ว่า
โครงสร้างข้อมูล ระดั บ เชิงแนวคิดจะเป็น ตัวที่ใ ช้เ ชื่อ มระหว่า งโครงสร้ างข้อมู ล ระดับ
ภายนอกกับโครงสร้างข้อมูลระดับภายใน เช่น ตารางข้อมูลของนักศึกษาดังนี้

นิสติ
รหัส ชื่อ-สกุล สำขำ คณะวิชำ ภูมลิ ำเนำ

256001155 มานะ อดทน คอมพิวเตอร์ วิทยาศาสตร์ พะเยา

โครงสร้างข้อมูลของนิสิต คือ

รหัส ชื่อ-สกุล สำขำ คณะวิชำ ภูมลิ ำเนำ

6.3 สถาปัตยกรรมระดับภายนอก (External Level หรือ View)


สถาปัตยกรรมระดับภายนอก เป็นระดับบนสุด มีการรวบรวมข้อมูลอย่างง่าย ๆ
จากผู้ใช้ให้กับนักวิเคราะห์นาไปศึกษา หรือเป็นมุมมองของผูใ้ ช้ที่มีต่อฐานข้อมูล ที่เรียกว่า
วิว (View) ซึ่งจะเกี่ยวข้องกับผูใ้ ช้งานมากที่สุด เป็นการมองข้อมูลภายในฐานข้อมูลสาหรับ
ผู้ใช้งานแต่ละคน เป็นระดับที่มีการนาข้อมูลจากฐานข้อมูลไปใช้งาน ผู้ใช้แต่ละคนสามารถ
เลือกอ่านข้อมูลเฉพาะที่ตนสนใจหรือต้องการใช้เท่านั้น
วัตถุประสงค์หลักของสถาปัตยกรรมทั้งสามระดับ คือ ต้องการให้ข้อมูล มีความ
เป็ น อิ ส ระจาก ซอฟท์ แ วร์ ทั้ ง ของผู้ ใ ช้ และของระบบ หรื อ อาจจะกล่ า วได้ ว่ า การ
เปลี่ย นแปลงใด ๆ ต่อทั้ง ฮาร์ด แวร์ และ ซอฟท์แวร์ จะไม่มีผลต่อข้อมูลนั้น ๆ ดังนั้น
แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 62

สถาปัตยกรรมทั้งสามระดับที่ กล่าวมานี้ จะมีความเป็นอิสระของข้อมูล คือ โครงสร้าง


ของข้อมูลระดับภายนอก จะมีรูปแบบที่คงที่ไม่มี การเปลี่ยนแปลงไป แม้จะมีการเปลี่ยน
โครงสร้ า งข้ อ มู ล ในระดั บ แนวคิ ด ก็ ต าม เช่ น มี ก ารเพิ่ ม รู ป แบบข้ อ มู ล ใหม่ หรื อ มี
ความสั ม พั น ธ์ ใ หม่ ๆ เพิ่ ม ขึ้ น เรี ย กว่ า ควำมเป็ น อิ ส ระทำงตรรกะ (Logical Data
Independence) และโครงสร้างข้อมูลระดับแนวคิด ก็เ ช่นกัน จะมีรูปแบบที่คงที่ แม้จะมี
การเปลี่ยนแปลงทางกายภาพ เช่น มีการเปลี่ยนวิธีเข้าถึงข้อมูล หรือลาดับของข้อมูลที่
เก็บอยู่จริงเปลี่ยนไป เรียกว่า ควำมเป็นอิสระทำงกำยภำพ (Physical Data Independence)
User 1 User 2 User 3
External level
(ระดับภำยนอก) View 1 View 2 View 3

∙ จานวนเอนทิตีทั้งหมด
Conceptual level Conceptual ∙ กฎข้อบังคับ (constraints)
(ระดับแนวคิด) Schema ∙ ระบบความปลอดภัยและกฎ
ความพึงพอใจข้อมูล

∙ การจัดการพื้นที่การจัดเก็บข้อมูล
Internal level Internal ∙ การจัดเก็บรายละเอียดของระเบียน
(ระดับภำยใน) Schema ∙ การจัดวางตาแหน่งระเบียน
∙ การบีบอัดข้ อมูล เทคนิคการเข้ ารหัส

DATABASE

ภาพที่ 3.12 แสดงสถาปัตยกรรมฐานข้อมูล 3 ระดับ


แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 63

7. ประเภทของแบบจำลองข้อมูล (Types of Data Models)


7.1 แบบจาลองข้อมูลลาดับชั้น (Hierarchical Data Model)
แบบจาลองข้อมูลลาดับชั้น หรือบางครั้งเรียกว่า แบบจำลองข้อมูลโครงสร้ำง
ต้นไม้ (Tree-based Data Model) เป็นแบบจาลองข้อมูลที่พัฒนามาจากแนวความคิดใน
การจั ด เก็ บ ข้ อ มู ล เพื่ อ ลดการซ้ าซ้ อ นของข้ อ มู ล (Data Redundancy) เป็ น แบบจ าลอง
ต้นแบบสาหรับการแก้ไขปัญหาการเก็บข้อมูลด้วยระบบแฟ้มข้อมูล โดยนาเอาข้อมูลในแต่
ละส่วน หรือแต่ละ Part มาจัดเก็บเป็นกลุ่มหรือเป็น Component แล้วรวมแต่ละกลุ่มเป็น
กลุ่มใหญ่เรียกว่า Final Component โดยมีโครงสร้างอยู่ในรูปแบบของต้นไม้ที่มีลัก ษณะ
คล้ายต้นไม้ที่คว่าหัวลงเป็นลาดับชั้น (Upside-down Tree) แตกออกเป็นกิ่งก้าน สาขา เป็น
การจัด เก็ บ ข้อมูล ในลั ก ษณะความสัมพันธ์แบบ พ่อแม่ -ลูก (Parent-Child Relationship
Type หรือ PCR)
โครงสร้างข้อมูล พื้นฐานของแบบจาลองข้อมูลลาดับ ชั้น ประกอบด้วยระเบียน
(Record) หรือ กลุ่มค่ำ ของข้อมูลของเอนทิ ตี หนึ่ ง ๆ หรือของความสั มพั นธ์ ระหว่ า ง
เอนทิตี ระเบียนข้อมูลชนิดเดียวกันเมื่อนามารวมกลุ่มกัน เรียกว่าชนิดระเบียน (Record
Type) (เอนทิตี หมายถึ งวั ตถุ ใ ด ๆทั้งที่เ ป็น นามธรรมและรูป ธรรมที่บรรจุไ ว้เ ป็นข้อมูล
ประกอบด้ ว ยคุ ณ สมบั ติ หรื อ แอททริ บิ ว ท์ ต่ า ง ๆ เช่ น ฐานข้ อ มู ล ของคณะวิ ช าอาจจะ
ประกอบด้วยเอนทิตี อาจารย์ นิสิต เจ้าหน้าที่ งบประมาณ ภาควิชา และ หลักสูตร เป็น
ต้น เอนทิตีอาจารย์ อาจจะประกอบไปด้วย ชื่อ -สกุล วันเดือนปีเกิด ตาแหน่งวิชาการ
คุณวุฒิการศึกษา เลขประจาตัวบัตรประชาชน ที่อยู่ เบอร์โทรศัพท์ เป็นต้น ข้อมูลของ
หน่วยงานเช่น มหาวิทยาลัย คณะวิชา ภาควิชา จะเหมาะสมกับแบบจาลองข้อมูลเชิง
ลาดับชัน้ มากที่สุด
7.1.1 ลักษณะของแบบจาลองข้อมูลลาดับชั้น มีลักษณะดังนี้
1) ข้อมูลทั้งหมดอยู่ในฐานข้อมูลร่วมกัน มีความสัมพันธ์แบบ 1:M
2) มีความสัมพันธ์แบบพ่อแม่-ลูก
3) ระเบีย นที่อยู่แถวบน (ระดับ สูงสุด ) เรีย กว่า ระเบีย นพ่อแม่
(Parent Record) ส่วนระเบียนในแถวถัดลงมาเรียกระเบียนลูก (Childrecord)
4) ระเบียนพ่อแม่ สามารถมีระเบียนลูกได้มากว่าหนึ่งระเบียน แต่
ระเบียน ลูกแต่ละระเบียนจะมีระเบียนพ่อแม่ได้เพียงหนึ่งระเบียนเท่านั้น
แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 64

5) เป็นการจัดโครงสร้างแบบบนลงล่าง (Top-down) มีลักษณะ


คล้ายโครงสร้างต้นไม้
6) เป็นสถาปัตยกรรมฐานข้อมูลที่เก่าแก่ที่สุด ยากต่อการพัฒนา
แอปพลิเคชัน (Application) เพื่อใช้งาน
7) โครงสร้างมีความยืดหยุ่นน้อย
8) ไม่สามารถกาหนดความสัมพันธ์แบบกลุ่มต่อกลุ่ม ได้
7.1.2 ข้อดีแบบจาลองข้อมูลลาดับชั้น
1) เป็นโครงสร้างที่เข้าใจง่าย มีประสิทธิภาพในการค้นหา
2) ค้นหาได้รวดเร็วเพราะมีการจัดลาดับชั้นความสัมพันธ์เอาไว้
3) เหมาะกับข้อมูลที่มกี ารเรียงลาดับแบบต่อเนื่อง
4) มีโครงสร้างเหมาะสมกับระบบคอมพิวเตอร์ที่มีขนาดใหญ่
5) โครงสร้ า งมี ค วามซั บ ซ้ อ นน้ อ ย เหมาะสมกั บ ข้ อ มู ล ที่ มี
ความสัมพันธ์แบบ 1 : M
6) สามารถกาหนดกฎเกณฑ์ที่ใช้ควบคุมความถูกต้องให้กับข้อมูล
ในฐานข้อมูลได้ง่าย
7) การรั ก ษาความปลอดภั ย ควบคุ ม ได้ โ ดยระบบการจั ด การ
ฐานข้อมูล
8) ระบบการจัดการฐานข้อมู ลสามารถสร้ างสภาวะความเป็ น
อิสระของข้อมูล การแก้ไข การบารุงรักษาโปรแกรมที่เขียนขึ้นไม่มผี ลต่อข้อมูล
9) ค่าใช้จ่ายในการจัดสร้างฐานข้อมูลน้อย
7.1.3 ข้อจากัดแบบจาลองข้อมูลลาดับชัน้
ถึงแม้วา่ ระบบการจัดการฐานข้อมูลแบบจาลองฐานข้อมูลแบบลาดั บชั้น
จะช่วยแบ่งเบาในปัญหาเรื่องความเป็นอิสระของข้อมูล แต่ระบบจัดการฐานข้อมูลยังคง
ต้องการความรู้ในระดับกายภาพของการจัดเก็บข้อมูล
1) ไม่มีข้อมูลจริงของระเบียนใด ๆ ยกเว้นรากต้นไม้ (root) ที่จะ
ดารงอยู่ได้โดยไม่ติดอยู่กับระเบียนพ่อแม่
2) ถ้าระเบียนลูกมีระเบียนพ่อตั้งแต่ 2 ตัวขึ้นไป จากระเบียนชนิด
เดียวกัน ระเบียนลูกจาเป็นต้องทาซ้าภายในแต่ละระเบียนพ่อแม่
แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 65

3) การเปลี่ ย นแปลงโครงสร้ า งของข้ อ มู ล ส่ ง ผลให้ ต้ อ งมี ก าร


ปรับเปลี่ยนและแก้ไขโปรแกรมประยุกต์ทั้งหมดที่ใช้ฐานข้อมูล
4) รองรับเฉพาะกับข้อมูลที่มคี วามสัมพันธ์ในแบบหนึ่งต่อกลุ่ม ไม่
สามารถรองรับข้อมูลที่มีความสัมพันธ์แบบ กลุ่มต่อกลุ่ม ได้
5) จะต้องมีก ารก าหนดลัก ษณะความสัมพันธ์ของข้อมูลทุก ตั ว
ก่อนเพื่อจะนามาจัดเป็นโครงสร้าง
6) การค้ น หาข้ อ มู ล มี จ ากั ด ถ้ า ข้ อ มู ล มี จ านวนมาก การเข้ าถึง
ข้อมูลจะใช้เวลานานในการค้นหา เนื่องจากจะต้องเข้าถึงต้นกาเนิดของข้อมูล
7) การออกแบบฐานข้อมูลเป็นเรื่องที่ซับซ้อนยาก ทาให้ยากต่อ
การพัฒนา เพราะจะต้องเข้าใจโครงสร้างทางกายภาพของข้อมูล
8) การเรียกใช้ขอ้ มูลจะต้องผ่านจาก Root เสมอ
9) ไม่ส ะดวกในการค้นหาข้อมูลในระดับ ล่าง เพราะการค้นหา
ข้อมูลในระดับล่างต้องค้นหาทั้งแฟ้มข้อมูล
10) ไม่มีความเป็นอิสระในโครงสร้า งและข้อ มูล เนื่องจากการ
จัดการ ข้อมูลจะขึน้ อยู่กับชนิดของอุปกรณ์ที่ใช้จัดเก็บข้อมูล
11) มีการจัดการที่ซับซ้อนและขาดความยืดหยุ่น อาจจะเป็นผล
ทาให้เกิดความเสียหายที่คาดไม่ถึงได้
12) ขาดมาตรฐานการรองรับที่ชัดเจน
7.2 แบบจาลองข้อมูลเครือข่าย (Network Data Model)
แบบจ าลองข้ อ มู ล เครื อ ข่ า ย พั ฒ นามาจากแบบจ าลองข้ อ มู ล ล าดั บ ชั้ น มี
วัตถุประสงค์ เพื่อกาหนดให้เป็นรูปแบบโครงสร้างข้อมูลที่เป็นมาตรฐาน และสามารถ
รองรับข้อมูลที่มคี วามสัมพันธ์ในแบบ กลุ่มต่อกลุ่ม ได้ ลักษณะแบบจาลองข้อมูลเครือข่าย
จะคล้ายกับลักษณะแบบจาลองข้อมูลลาดับชั้น แต่จะแตกต่างกันตรงที่แบบจาลองข้อมูล
เครือข่ายจะมีความยืดหยุ่นที่สูงกว่า เช่นสามารถมีต้นกาเนิดของข้อมูลได้มากกว่าหนึ่ง
และยินยอมให้ระดับชั้นที่อยู่เหนือกว่ามีได้หลายแฟ้มข้อมู ลถึงแม้ว่าระดับชั้นถัดลงมาจะมี
เพี ย งแฟ้ ม ข้ อ มู ล เดี ย ว ในขณะที่ แ บบจ าลองข้ อ มู ล ล าดั บ ชั้ น จะมี เ พี ย งพ่ อ เดี ย วหรื อ
แฟ้มข้อมูลเท่านั้น
แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 66

แบบจาลองเครือข่ายนี้จะใช้อุป กรณ์เก็บ ข้อมูลสาหรับ ตัวบ่งชี้ หรือพอยน์เ ตอร์


(Pointer) เป็ น ตั ว โยงความสั ม พั น ธ์ ร ะหว่ า งระเบี ย นในไฟล์ ต่ า ง ๆ รวมทั้ ง สนั บ สนุ น
ความสัมพันธ์ทั้ง แบบหนึ่งต่อกลุ่ม และความสัมพันธ์แบบ กลุ่มต่อกลุ่ม ทาให้โครงสร้าง
ของข้อมูลแต่ละแฟ้มข้อมูล มีความ สัมพันธ์คล้าย ๆ ร่างแห เช่น พนักงานขายหนึ่งคน
สามารถออกใบส่งของได้หลายใบ แต่ละใบจะมีชื่อพนัก งานขายเพีย งชื่อเดียว หรือ
ลูกค้าคนหนึ่งอาจจะมีการซื้อสินค้าได้หลายครั้ง จึงอาจจะมีใบส่งของได้หลายใบ และแต่
ละใบจะมีชื่อผู้ซือ้ ได้เพียงหนึ่งชื่อเท่านั้น เป็นต้น

ภาพที่ 3.13 แสดงแบบจาลองข้อมูลแบบลาดับขั้น


แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 67

7.2.1 ลักษณะของแบบจาลองข้อมูลเครือข่ายมีลักษณะดังนี้
1) สมาชิกของเซตหนึ่ง ๆ สามารถเป็นสมาชิกของเซตอื่นได้
2) ข้อมูลมีความสัมพันธ์กันแบบ 1:1, 1:M และ N:M
3) นาเสนอข้อมูลหลายรายการ (Multilist)
4) โครงสร้างเป็นเซตของระเบียน (Record Set)
5) เซตของระเบียนประกอบ ด้วย Owner และ Member Record
6) Member Record สามารถมี Owner Record ได้หลายระเบียน
7.2.2 ข้อดีแบบจาลองข้อมูลเครือข่าย
1) สนับสนุนความสัมพันธ์แบบกลุ่มต่อกลุ่มได้
2) ข้อมูลมีความซ้าซ้อนน้อยกว่าแบบจาลองแบบลาดับชัน้
3) สามารถเชื่อมโยงข้อมูลแบบไป-กลับได้
4) สะดวกในการค้นหาเพราะไม่ต้องไปเริ่มค้นหาตั้งแต่ต้นกาเนิด
5) มีความยืดหยุ่นในการค้นหาข้อมูล เข้าถึงข้อมูลได้ง่าย
6) สนับสนุนให้โปรแกรมมีความเป็นอิสระจากข้อมูล
7.2.3 ข้อจากัดแบบจาลองข้อมูลเครือข่าย
1) การป้องกั นความปลอดภัยของข้อมูลมีน้อย เพราะสามารถ
เข้าถึงระเบียนได้โดยตรง
2) สิน้ เปลืองเนือ้ ที่หน่วยความจาในการเก็บพอยน์เตอร์
3) การออกแบบและการเปลี่ยนแปลงข้อมูลท าได้ค่อนข้างยาก
เพราะต้องกาหนดความสัมพันธ์ให้ครอบคลุมทุกข้อมูล
4) ความสัมพันธ์ข้อมูลที่เชื่อมโยงกันไปมายากต่อการใช้งาน
5) การป้องกั นความลับ ของข้อมูล ทาได้ย ากเพราะมีโครงสร้าง
แบบง่ายๆ ไม่ซับซ้อน
7.3 แบบจาลองข้อมูลเชิงสัมพันธ์ (Relational Database Model)
เป็นแบบจาลองที่นิยมแพร่หลายมากที่สุดในปัจจุบัน เพราะใช้งานง่าย ไม่ยุ่งยาก
ซับซ้อน คิดค้นโดย Edgar Frank Codd (จาก บริษัท IBM ในปี ค.ศ.1970) เป็นแบบจาลอง
ข้อมูลที่แสดงข้อมูลในรูปแบบของตาราง ภายในตารางจะประกอบด้วยแถว และคอลัมน์
ข้ อ มู ล ของแต่ ล ะแถวเรี ย กว่า ทู เ พิ ล (Tuple) คอลั ม น์ ใ นตารางจะหมายถึง ลั ก ษณะหรือ
แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 68

คุ ณ สมบั ติ ห รื อ แอททริ บิว ท์ (Attribute) ของตาราง แบบจ าลองข้ อ มู ล นี้ส ามารถแสดง


ความสัมพันธ์ข้อมูลได้ทั้งแบบหนึ่งต่อหนึ่ง หนึ่งต่อกลุ่ม และ แบบกลุ่มต่อกลุ่ม และใช้ทั้ง
คีย์หลัก (Primary Key) และ คีย์รอง (Secondary Key) ในการอ้างอิงกับตารางอื่น

สำขำวิชำ

รำยวิชำพื้นฐำน รำยวิชำเอก รำยวิชำเลือกเสรี

วิชำ วิชำ วิชำ วิชำ วิชำ


Database Operating Programming
คณิตศำสตร์ System ว่ำยน้ำ

5801123 5801124 5801125 5801126 5801127


(มำนะ ใจดี) (มำนี ใจงำม) (สมชำย ดีจริง) (วิชัย รักชำติ) (นำรี มีสุข)

ภาพที่ 3.14 แสดงแบบจาลองข้อมูลเครือข่าย

ข้อแตกต่างแบบจ าลองเชิ ง สัม พั นธ์ กั บ แบบจาลองล าดับ ชั้ น และแบบจ าลอง


เครือข่าย คือในส่วนรายละเอียดของการจัดเก็บข้อมูล จะถูกซ่อนไว้จากผู้ใช้ การเรียกใช้
ข้อมูลจะผ่านทางภาษาสอบถาม (Query Language) ซึ่งเป็นภาษาที่มีประสิทธิภาพสูงและ
ใช้ง่าย ภาษาที่ไ ด้รับความนิย มในกลุ่มผู้ใ ช้ในปัจจุบัน คือภาษา SQL (Structured Query
Language) ซึ่งสร้างขึ้นโดยใช้พ้ืนฐานของแบบจาลองเชิงสัมพันธ์
แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 69

การเชื่อมโยงข้อมูลระหว่างตารางจะใช้ แอททริบิวท์ ที่มีอยู่ทั้งสองตารางเป็นตัว


เชื่อมโยงข้อมูล ที่สามารถสื่อสัมพันธ์กับผู้ใช้ได้เข้าใจง่ายที่สุด ข้อมูลที่จัดเก็บอยู่ในตาราง
สามารถจัดเก็บข้อมูลในส่วนของตน และมีความสัมพันธ์กับตารางอื่น ๆได้
7.3.1 ลักษณะของแบบจาลองข้อมูลเชิงสัมพันธ์มีลักษณะดังนี้
1) ข้อมูลถูกเก็บในรูปของตาราง 2 มิติ คือแถวและคอลัมน์
2) ข้อมูลในแต่ละแถวต้องมีชื่อกากับ และชื่อจะต้องไม่ซ้ากัน
3) ค่าของข้อมูลแต่ละคอลัมน์ต้องเป็นค่าของข้อมูลชนิดเดียวกัน
4) การเรียงลาดับของข้อมูลแต่ละแถวไม่เป็นประเด็นสาคัญ
5) การเรียงลาดับของข้อมูลแต่ละคอลัมน์ไม่เป็นประเด็นสาคัญ
6) ข้อมูลในแต่ละแถวหนึ่งๆ จะบรรจุข้อมูลได้เพียงค่าเดียวเท่านั้น
7) ค่าของข้อมูลในแต่ละคอมลัมน์จะต้องเป็นไปตามข้อก าหนด
ของโดเมน (Domain) หรือการกาหนดขอบเขต ค่าข้อมูล และ
ชนิดของข้อมูล ในคอมลัมน์นั้น

ชื่อรีเลชัน “นิสิต”
แอททริบิวท์ 1 แอททริบิวท์ 2 แอททริบิวท์ 3 แอททริบิวท์ 4 แอททริบิวท์ 5
รหัสนิสิต ชื่อ สกุล คณะวิชา สาขาวิชา
580103 น.ส.นารี สดใส พยาบาล การพยาบาล ทูเพิล 1
คำร์ดินัลลิตี

580314 นายสะอาด ใจดี วิทยาศาสตร์ ชีววิทยา ทูเพิล 2


580619 นายมานะ อดทน วิศวกรรมศาสตร์ วิศวกรรมไฟฟ้า ทูเพิล 3
580907 น.ส.วิไล โสภา สหเวชศาสตร์ กายวิภาค ทูเพิล 4
ดีกรี

ภาพที่ 3.15 ตัวอย่างรีเลชันในแบบจาลองข้อมูลเชิงสัมพันธ์

*ดีกรี (Degree) - จานวน แอททริบิวท์ ในรีเลชันนัน้ ๆ


*คาร์ดินัลลิตี (Cardinality) – จานวนทัพเพิลในรีเลชัน
แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 70

7.3.2 ข้อดีแบบจาลองข้อมูลเชิงสัมพันธ์
1) รูปแบบโครงสร้างสามารถสื่อสารและเข้าใจได้ง่าย
2) สนับสนุนความสัมพันธ์แบบกลุ่มต่อกลุ่ม
3) มีความยืดหยุ่นในการเข้าถึงข้อมูล ความซ้าซ้อนข้อมูลมีน้อย
4) มีข้อมูลความคงสภาพ (Data Integrity) และเป็นมาตรฐาน
5) โครงสร้างข้อมูลมีความเป็นอิสระจากโปรแกรม
6) สามารถเลือกแสดงข้อมูลตามเงื่อนไขได้หลาย Key Field
7) มีระบบรักษาความปลอดภัยที่ดี
7.3.3 ข้อจากัดแบบจาลองข้อมูลเชิงสัมพันธ์
1) การแก้ไขปรับปรุงแฟ้มข้อมูลทาได้ยาก
2) ระบบยังมีความซับซ้อน และมีขอ้ จากัดด้านประสิทธิภาพ
3) จะต้องสร้างตารางขึ้นมาใหม่เมื่อมีการประมวลผล
4) ใช้ฮาร์ดแวร์และซอฟท์แวร์ที่มีความสามารถสูงซึ่งมีราคาแพง

รีเลชัน “ลงทะเบียน”

รหัสนิสิต ชื่อ-สกุล คณะวิชา รหัสวิชา


5426004 นายสมชาย เพชรสี วิศวกรรมศาสตร์ 253001
5511010 น.ส ยินดี มีสุข วิทยาศาสตร์ 260003
5724056 นายอุดม สุขโชค เทคโนโลยีสารสนเทศ 000101
5622032 น.ส นงนุช สุขแสง พยาบาล 260003
ควำมสัมพันธ์
(Relationship
รีเลชัน “หลักสูตร”
รหัสวิชา ชื่อรายวิชา จานวนหน่วยกิต
253001 คณิตศาสตร์ 4
260003 ภาษาอังกฤษ 3
000101 ทักษะชีวติ 3

ภาพที่ 3.16 ความสัมพันธ์ของแบบจาลองข้อมูลเชิงสัมพันธ์


แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 71

7.4 แบบจาลองข้อมูลเชิงวัตถุ (Object-Oriented Database Model)


แบบจาลองข้อมูลเชิงวัตถุ เป็นเทคโนโลยีที่พัฒนาต่อจากแบบจาลองข้อมูลเชิง
สัมพันธ์ โดยมีแนวคิดหลักที่ประกอบไปด้วยวัตถุ (Object) การปกปิดความลับของวัตถุ
(Encapsulation) คลาส (Class) การสื บ ทอด (Inheritance) คุ ณ ลั ก ษณะ (Identity) และ
โดเมน (Domain) เป็นต้น
ฐานข้อมูลเชิงวัตถุมีจุดกาเนิดขึ้นมาในช่วงกลางปี ค.ศ. 1980 (Kim, 1990) โดยมี
แนวคิดมาจากการเขียนโปรแกรมเชิงวัตถุ (Object Oriented Program หรือ OOP) ที่ได้รับ
ความนิ ย มในการใช้ ง านเป็ น อย่ า งมาก โดยมองทุ ก อย่ า งเป็ น วั ต ถุ แ ละแต่ ล ะวั ต ถุ จ ะ
ประกอบด้วยข้อมูลและโอเปอเรชัน หรือการปฏิบัติงาน ที่มีคลาส หรือต้นแบบข้อมูลเป็น
ตั ว ก าหนดคุ ณ สมบั ติ ข องวั ต ถุ ซึ่ ง จะคล้ า ย ๆ กั บ แอททริ บิ ว ท์ ที่ ใ ช้ อ ธิ บ ายเอนทิ ตี ใ น
แบบจาลองข้อมูลเชิงสัมพันธ์นั่นเอง และฐานข้อมูลเชิงสัมพันธ์จะไม่เหมาะกับโครงสร้าง
ฐานข้อมูลที่มีขนาดใหญ่ และมีความซับซ้อน
แบบจาลองข้อมูลเชิงวัตถุ เป็นแบบจาลองข้อมูลที่แตกต่างไปจากแบบจาลอง
ข้อมูลแบบเชิงสัมพันธ์ เช่นฐานข้อมูลเชิงวัตถุจะเก็บข้อมูลไว้ในวัตถุ แต่แบบจาลองข้อมูล
แบบเชิงสัมพันธ์จะเก็บข้อมูลต่าง ๆ ไว้ในตาราง และจากคุณสมบัติที่สาคัญของฐานข้อมูล
เชิงวัตถุดังที่กล่าวมา จะช่ วยให้การจัดเก็บข้อมูลมีความซ้าซ้อนลดน้อยลง ฐานข้อมูลมี
ความคงสภาพมากขึ้น ลดความขัดแย้ง ของข้อมูล และไม่มีการสูญเสียประสิทธิภาพของ
ระบบจัดการฐานข้อมูล
7.4.1 ลักษณะแบบจาลองข้อมูลเชิงวัตถุมีลักษณะสาคัญดังนี้
1) มองทุกสิ่งเป็นวัตถุ วัตถุประกอบด้วยข้อมูลและโอเปอเรชัน
2) มีคลาสเป็นตัวกาหนดรายละเอียดของวัตถุ
3) โครงสร้างของเชิงวัตถุกาหนดโดยใช้คุณสมบัติของคลาส
4) มีคุณสมบัติ โพลีมอร์ฟิสม (Polymorphism) หรือการออกแบบ
เดียวแต่สามารถตอบสนองได้หลายรูปแบบ
5) การปกปิดความลับของวัตถุ ป้องกันไม่ให้วัตถุอื่นที่อยู่ภายนอก
เข้าถึงวัตถุได้อย่างอิสระ
แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 72

7.4.2 ข้อดีแบบจาลองข้อมูลเชิงวัตถุ
1) คุณสมบัติการสืบทอด ทาให้ข้อมูลมีความคงสภาพสูง
2) การนาเสนอแบบ Visual ทาให้อธิบายหัวข้อความหมายได้ดี
3) สามารถจัดการกับข้อมูลที่มคี วามซับซ้อนได้เป็นอย่างดี
4) สนับสนุนคุณสมบัติของการนากลับมาใช้ใหม่ (Reusable)
5) การเข้าถึงข้อมูลในแบบจาลองข้อมูลเชิงวัตถุ ผูใ้ ช้ไม่จาเป็นต้อง
รู้วธิ ีการทางานภายในของแต่ละโอเปอเรชันของวัตถุ
7.4.3 ข้อจากัดแบบจาลองข้อมูลเชิงวัตถุ
1) ค่าใช้จ่ายเกี่ยวกับระบบแบบจาลองข้อมูลเชิงวัตถุค่อนข้างสูง
2) ต้องอาศัยบุคลากรที่มีความรู้ ความเชี่ยวชาญด้านเทคโนโลยี
เชิงวัตถุในการจัดการกับฐานข้อมูลเชิงวัตถุ
3) ยังไม่มีมาตรฐานรองรับที่ชัดเจน

ภาพที่ 3.17 ความสัมพันธ์ของแบบจาลองข้อมูลเชิงวัตถุ

7.5 แบบจาลองข้อมูลมัลติไดเมนชัน (Multidimensional Database Model)


แบบจาลองข้อมูลมัลติไดเมนชัน เป็นแบบจาลองข้อมูลที่พัฒนาจากแบบจาลอง
ข้อมูลเชิงสัมพันธ์ เป็นการแสดงข้อมูลหลายมิติ การจัดเก็บข้อมูลและการแสดงแถว และ
คอลัมน์ ข้อมูลจะมีลักษณะเป็นลูกบาศก์นิยมใช้กับคลั งข้อมูลทาให้มองเห็นและวิเคราะห์
แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 73

ข้อมูลได้ 2 ทาง ทาให้การวิเคราะห์ข้อมูล กระทาได้ง่ายขึ้น มองเห็นปัญหาและสร้าง


วิธีการแก้ไขปัญหาได้ดยี ิ่งขึ้น
7.5.1 ลักษณะของแบบจาลองข้อมูลมัลติไดเมนชัน มีลักษณะดังนี้
1) แถวและคอลัมน์จะมีลักษณะเป็นรูปลูกบาศก์ (Data Cube)
2) มองข้อมูลได้ 2 ทาง ทาให้เห็นปัญหาและสร้างวิธีแก้ปัญหาได้
3) ใช้แบบจาลอง Star Schema ในการออกแบบ
4) มี Fact Table และ Dimension Table ท างานร่ ว มกั น ในการ
จัดเก็บข้อมูล
7.5.2 ข้อดีแบบจาลองข้อมูลมัลติไดเมนชัน
1) เป็นแบบจาลองที่นาเสนอมุมมองข้อมูลได้หลายมิติ
2) สามารถนาไปประยุ ก ต์ใ ช้ใ นการตัด สินใจ การวางแผนและ
การแก้ปัญหาทางธุรกิจได้
7.5.3 ข้อจากัดแบบจาลองข้อมูลมัลติไดเมนชัน
1) การใช้งานต้องอาศัยผูเ้ ชี่ยวชาญเฉพาะด้าน
2) การวิเคราะห์ข้อมูลมีคา่ ใช้จ่ายสูง
3) เป็นแบบจาลองข้อมูลที่เหมาะกับธุรกิจขนาดใหญ่

ภาพที่ 3.18 ความสัมพันธ์ของแบบจาลองข้อมูลมัลติไดเมนชัน


(ที่มา: https://docs.oracle.com/cd/E12839_01/bi.1111/b40105/i_olap_chapter.htm#BIDPU14)
แ บ บ จา ล อ ง ฐ า น ข้ อ มู ล | 74

วัตถุประสงค์สาคัญของแบบจาลองฐานข้อมูล ก็เพื่อนาแนวความคิดต่าง ๆ มา
เสนอให้ เ กิ ด เป็น แบบจ าลองฐานข้ อ มู ล ซึ่ ง เป็ น เครื่ อ งมือ ส าคัญ ที่ใ ช้ ใ นการอธิบ ายถึง
โครงสร้างข้อมูล และความสั มพันธ์ระหว่ างข้ อมูล ภายในฐานข้ อมูล จากรูป แบบที่ เ ป็ น
แนวคิดที่เข้าใจยาก ให้อยู่ในรูปแบบที่เข้าใจง่าย เพราะแบบจาลองฐานข้อมูลจะประกอบ
ไปด้วยรูปภาพ สัญลักษณ์ต่าง ๆ ที่แสดงให้เห็นถึงการทางานของระบบ ทาให้การสื่อสาร
ระหว่างผู้ออกแบบฐานข้อมูล ผู้เขียนโปรแกรม และผู้ใช้ระบบฐานข้อมูลให้เข้าใจถูกต้อง
ตรงกันมากขึ้น
แบบจ าลองฐานข้ อ มู ล แบ่ ง ออกเป็ น 2 ประเภท คื อ แบบจ าลองแบบแนวคิ ด
(Conceptual Model) เป็นแบบจาลองที่นาไปใช้ในขั้นตอนการออกแบบฐานข้อมูล เพื่อให้
เกิดความเข้าใจตรงกันถึงคุณสมบัติของข้อมูลและความสัมพันธ์ระหว่างข้อมูลระหว่าง
ผู้ออกแบบและผู้ใช้งาน และแบบจาลองแบบนาไปใช้ (Implementation Model) ซึ่งเป็น
แบบจาลองที่นาไปใช้ในขั้นตอนการสร้างฐานข้อมูล ที่อธิบายถึงโครงสร้างของฐานข้อมูล
แต่ละประเภท
แบบจาลองข้อมูล แบ่งออกเป็น 3 ส่วน ด้วยกัน คือส่วนโครงสร้าง (Structure) ที่
ประกอบด้วยกลุ่มสัญลักษณ์รวมทั้งกฎระเบียบต่าง ๆ เพื่อใช้ในการสร้างฐานข้อมูล ส่วน
ปรับปรุง (Manipulative) เป็นส่วนที่กาหนดชนิดของการปฏิบัติการต่าง ๆ ที่เกี่ยวกับข้อมูล
นิยมใช้ภาษา SQL ในการจัดการข้อมูล และส่วนกฎความคงสภาพ (a set of integrity rules)
ซึ่งเป็นส่วนสาคัญ เป็นกฎเกณฑ์ที่ใช้ในการควบคุมความถูกต้องของข้อมูล แบบจาลอง
ฐานข้อมูลที่ดี ควรเป็นแบบจาลองที่เข้าใจได้ง่าย ไม่ควรมีขอ้ มูลที่ซ้าซ้อน และควรมีความ
เป็นอิสระของข้อมูล มีความยืดหยุ่นและง่ายต่อการปรับปรุงในอนาคต

********************

You might also like