แบบจำลองข้อมูล (Data Modeling)
การสร้างแบบจำลองข้อมูลหรือแบบจำลองฐานข้อมูลจะเป็นขั้นตอนแรกของการออกแบบฐานข้อมูล ที่ซึ่งจะมุ่งเน้นที่การกำหนดโครงสร้างของฐานข้อมูลที่ซึ่งจะใช้ในการจัดเก็บและจัดการข้อมูลของผู้ใช้งาน ฐานข้อมูล ในหลายๆครั้งการสร้างแบบจำลองฐานข้องมูลอาจหมายถึงการระบุถึงแบบจำลองข้อมูลสำหรับการ กำหนดขอบเขตของปัญหา (problem domain) ที่เราจะพิจารณา แบบจำลองข้อมูลมักมีลักษณะเป็น แผนภาพที่ใช้แสดงโครงสร้างที่ซับซ้อนของฐานข้อมูล มีหน้าที่ในการช่วยให้ผู้ออกแบบฐานข้อมูลสามารถเข้า ใจความซับซ้อนของข้อมูลที่ถูกใช้ในองค์กรต่างๆ นอกจากนั้น แบบจำลองข้อมูลมักจะแสดงถึงโครงสร้างของ ข้อมูลในฐานข้อมูลและคุณลักษณะของข้อมูลเหล่านั้น ข้อจำกัดต่างๆ การเปลี่ยนแปลง/เปลี่ยนรูปข้อมูล และ อื่นๆที่ซึ่งสามารถสนับสนุนการกำหนดขอบเขตของปัญหา
การสร้างแบบจำลองฐานข้อมูลจะเป็นกระบวนการทำซ้ำแบบค่อยเป็นค่อยไป โดยในตอนเริ่มต้นเรา อาจเริ่มต้นจากความเข้าอย่างๆง่ายๆเกี่ยวกับขอบเขตปัญหาและสามารถทำการสร้างแบบจำลองฐานข้อมูล อย่างง่ายตามความเข้าใจที่มี แต่หลังจากทำการติดต่อสื่อสารกับผู้ใช้และการพิจารณาเกี่ยวกับข้อมูลและ ขั้นตอนในการดำเนินธุรกิจต่างๆซ้ำแล้วซ้ำเล่าจะทำให้เรามีความเข้าใจเกี่ยวกับของเขตของปัญหามากยิ่งขึ้น และจะช่วยให้เราสามารถเพิ่มเติมรายละเอียดของแบบจำลองฐานข้อมูลได้มากขึ้น ในท้ายสุด เราจะได้ แบบจำลองฐานข้อมูลที่สามารถตอบสนองต่อความต้องการของผู้ใช้ที่ซึ่งจะมีลักษณะคล้ายกับพิมพ์เขียวที่ บรรจุไปด้วยวิธีการในการสร้างฐานข้อมูล โดยพิมพ์เขียวที่ได้จะมีลักษณะเป็นแผนภาพที่จะประกอบไปด้วย 1) ค าอธิบายเกี่ยวกับโครงสร้างของข้อมูลที่ใช้ในการจัดเก็บข้อมูลที่ผู้ใช้ต้องการ 2) กฎที่เกี่ยวข้องกับการการัน ตีความสมบูรณ์ของข้อมูล (data integrity) และ 3) วิธีการในการจัดการข้อมูลที่ซึ่งจะสนับสนุนการ เปลี่ยนแปลง/เปลี่ยนรูปข้อมูล ตามลำดับ จากที่ได้กล่าวข้างต้น แบบจำลองข้อมูลทำหน้าที่เสมือนกับเครื่องมือที่ใช้ในการติดต่อสื่อสารระหว่างผู้ออกแบบฐานข้อมูล ผู้เขียนโปรแกรม และผู้ใช้ระบบฐานข้อมูล ถ้าเรา สามารถสร้างแบบจำลองข้อมูลที่ดี แบบจำลองนี้จะช่วยเพิ่มความเข้าใจและจะสามารถสะท้อนถึงโครงสร้างที่ เหมาะสมสำหรับจัดเก็บข้อมูลตามแนวทางในการดำเนินธุรกิจ (หมายเหตุ ในการออกแบบฐานข้อมูล ผู้ออกแบบฐานข้อมูลควรที่จะต้องมีการตัดสินใจที่ดีที่ซึ่งจะช่วยให้สามารถสร้างแบบจำลองฐานข้อมูลที่ดีได้ การตัดสินใจที่ดีมักจะได้มาจากการทดลองและการประสบความล้มเหลว ดังนั้น ถ้าเราต้องการที่จะมีการ ตัดสินใจที่ดี เราจำเป็นที่จะต้องฝึกฝนเกี่ยวกับการออกแบบฐานข้อมูลบ่อยๆเพื่อที่จะได้รับประสบการณ์ เพิ่มขึ้นจากการออกแบบฐานข้อมูลในแต่ละครั้ง)
ลำดับชั้นข้อมูล(Data Hierarchy)
1. บิต (bit : binary digit) เป็นหน่วยที่เล็กที่สุดของข้อมูล
2. ไบต์ (byte) เป็นการรวมกลุ่มของบิตหลาย ๆ บิตเข้าด้วยกันเพื่อใช้แทนอักขระ 1 ตัวเรียกว่า ไบต์ (byte) ซึ่งแทนหนึ่งตัวอักขระ ในการแทนรหัสข้อมูลด้วยเลขฐาน 2 เมื่อ n เป็นจำนวนบิตที่ใช้ในการแทนรหัสข้อมูล 1 อักขระ เช่น รหัสเอบซีดิก(EBCDIC : Extended Binary Code Decimal Interchange Code) รหัสแอสกี(ASCII : American Standard Code for Internation Interchange) ใช้ 8 บิตรวมเป็น 1 ไบต์สามารถมีอักขระได้ 256 อักขระ เช่น ใช้รหัส 1100-0001 แทน 1A เป็นต้น
3. ฟิลด์ (filed) เป็นการนำอักขระหลาย ๆ ตัวรวมกันโดยมีความหมายอย่างใดอย่างหนึ่งเราจะเรียกว่า เขตข้อมูลหรือฟิลด์ (filed) เช่น การรวมของตัวอักษรและตัวเลขเพื่อใช้แทนรหัสลูกค้า เช่น ‘C0100001’ เป็นต้น
ฟิลด์ คือ กลุ่มของอักขระที่สัมพันธ์กันตั้งแต่ 1 ตัวขึ้นไปที่นำมารวมกันแล้วแสดงลักษณะหรือความหมายอย่างใดอย่างหนึ่ง ฟิลด์แต่ละฟิลด์ยังแยกออกเป็นประเภทข้อมูล ซึ่งจะบ่งบอกว่าในเขตฟิลด์นั้นบรรจุข้อมูลประเภทใดไว้ สามารถแยกประเภทของฟิลด์ได้เป็น 3 ประเภทคือ
1. ฟิลด์ตัวเลข (numeric field) ประกอบด้วย อักขระที่เป็นตัวเลข ซึ่งอาจเป็นเลขจำนวนเต็มหรือทศนิยมและอาจมีเครื่องหมายลบหรือบวก เช่น ยอดคงเหลือในบัญชีเป็นกลุ่มของตัวเลข
2. ฟิลด์ตัวอักษร (alphabetic field) ประกอบด้วย อักขระที่เป็นตัวอักษรหรือช่องว่าง (blank) เช่น ชื่อลูกค้าเป็นกลุ่มของตัวอักษร
3. ฟิลด์อักขระ (character field หรือ alphanumeric field) ประกอบด้วย อักขระซึ่งอาจจะเป็นตัวเลขหรือตัวอักษรก็ได้ เช่น ที่อยู่ของลูกค้า
ข้อมูลที่ปรากฏอยู่ในฟิลด์ เป็นหน่วยย่อยของระเบียนที่บรรจุอยู่ในแฟ้มข้อมูล เช่น ฟิลด์เลขรหัสประจำตัวบุคลากร ฟิลด์เงินเดือนของลูกจ้าง หรือฟิลด์เลขหมายโทรศัพท์ของพนักงาน ตัวอย่าง เช็คของธนาคารแห่งหนึ่งประกอบด้วย ชื่อที่อยู่ธนาคาร เช็คเลขที่ จ่ายจำนวนเงินเป็นตัวเลข จำนวนเงินเป็นตัวอักษรสาขาเลขที่ เลขที่บัญชี และลายเซ็นฟิลด์บางฟิลด์อาจจะประกอบด้วยข้อมูลหลาย ๆ ประเภทรวมกันในฟิลด์ เช่น ฟิลด์วันที่ประกอบด้วย 3 ฟิลด์ย่อย ๆ คือ วันที่ เดือน และปี หรือในฟิลด์ชื่อธนาคาร ยังประกอบด้วยหลายฟิลด์ย่อย ๆ คือ ชื่อธนาคาร ที่อยู่ เมือง ประเทศ และรหัสไปรษณีย์
4. เรคคอร์ด (record) หรือ ระเบียน คือ กลุ่มของฟิลด์ที่สัมพันธ์กัน ประกอบขึ้นมาจากข้อมูลพื้นฐานต่างประเภทกันรวมขึ้นมาเป็น 1 ระเบียน ระเบียนจะประกอบด้วย ฟิลด์ ต่างประเภทกันอยู่รวมกันเป็นชุด เช่น ระเบียนของเช็คแต่ละระเบียน จะประกอบด้วยฟิลด์ ชื่อธนาคาร เช็คเลขที่ วันที่ สั่งจ่าย จำนวนเงิน สาขา เลขที่ เลขที่บัญชี ข้อมูลเช็คธนาคารประกอบด้วยฟิลด์ต่าง ๆ ระเบียนแต่ละระเบียนจะมีฟิลด์ที่ใช้อ้างอิงถึงข้อมูลในระเบียนนั้น ๆ อย่างน้อย 1 ฟิลด์เสมอ ฟิลด์ที่ใช้อ้างอิงนี้เรียกว่าคีย์ฟิลด์ (key field) ในทุกระเบียนจะมีฟิลด์หนึ่งที่ถูกใช้เป็นคีย์ฟิลด์ ฟิลด์ที่ถูกใช้เป็นคีย์จะเป็นฟิลด์ที่มีค่าไม่ซ้ำกันในแต่ละระเบียน (unique) เพื่อสะดวกในการจัดเรียงระเบียนในแฟ้มข้อมูลและการจัดโครงสร้างของแฟ้มข้อมูล เช่น ระเบียนของเช็คธนาคาร จะใช้เลขที่บัญชีเป็นคีย์ฟิลด์ ระเบียนแฟ้มข้อมูลพนักงานใช้เลขประจำตัวพนักงานเป็นคีย์ฟิลด์
5. ฐานข้อมูล (database) หมายถึง กลุ่มของข้อมูลที่ถูกเก็บรวบรวมไว้ โดยมีความสัมพันธ์ซึ่งกันและกัน โดยไม่ได้บังคับว่าข้อมูลทั้งหมดนี้จะต้องเก็บไว้ในแฟ้มข้อมูลเดียวกันหรือแยกเก็บหลาย ๆ แฟ้มข้อมูลนั่นก็คือการเก็บข้อมูลในฐานข้อมูลนั้นเราอาจจะเก็บทั้งฐานข้อมูล โดยใช้แฟ้มข้อมูลเพียงแฟ้มข้อมูลเดียวกันได้ หรือจะเก็บไว้ในหลาย ๆ แฟ้มข้อมูล ที่สำคัญคือจะต้องสร้างความสัมพันธ์ระหว่างระเบียนและเรียกใช้ความสัมพันธ์นั้นได้ มีการกำจัดความซ้ำซ้อนของข้อมูลออกและเก็บแฟ้มข้อมูลเหล่านี้ไว้ที่ศูนย์กลาง เพื่อที่จะนำข้อมูลเหล่านี้มาใช้ร่วมกัน ควบคุมดูแลรักษาเมื่อผู้ต้องการใช้งานและผู้มีสิทธิ์จะใช้ข้อมูลนั้นสามารถดึงข้อมูลที่ต้องการออกไปใช้ได้ ข้อมูลบางส่วนอาจใช้ร่วมกับผู้อื่นได้ แต่บางส่วนผู้มีสิทธิ์เท่านั้นจึงจะสามารถใช้ได้โดยทั่วไปองค์กรต่าง ๆ จะสร้างฐานข้อมูลไว้ เพื่อเก็บข้อมูลต่าง ๆ ของตัวองค์กร โดยเฉพาะอย่างยิ่งข้อมูลในเชิงธุรกิจ เช่น ข้อมูลของลูกค้า ข้อมูลของสินค้า ข้อมูลของลูกจ้าง และการจ้างงาน เป็นต้น การควบคุมดูแลการใช้ฐานข้อมูลนั้น เป็นเรื่องที่ยุ่งยากกว่าการใช้แฟ้มข้อมูลมาก เพราะเราจะต้องตัดสินใจว่าโครงสร้างในการจัดเก็บข้อมูลควรจะเป็นเช่นไร การเขียนโปรแกรมเพื่อสร้างและเรียกใช้ข้อมูลจากโครงสร้างเหล่านี้ ถ้าโปรแกรมเหล่านี้เกิดทำงานผิดพลาดขึ้นมา ก็จะเกิดความเสียหายต่อโครงสร้างของข้อมูลทั้งหมดได้ เพื่อเป็นการลดภาวะการทำงานของผู้ใช้ จึงได้มีส่วนของฮาร์ดแวร์และโปรแกรมต่าง ๆ ที่สามารถเข้าถึงและจัดการข้อมูลในฐานข้อมูลนั้น เรียกว่า ระบบจัดการฐานข้อมูล หรือDBMS (data base management system) ระบบจัดการฐานข้อมูล คือ ซอฟต์แวร์ที่เปรียบเสมือนสื่อกลางระหว่างผู้ใช้และโปรแกรมต่าง ๆ ที่เกี่ยวข้องกับการใช้ฐานข้อมูล ซึ่งมีหน้าที่ช่วยให้ผู้ใช้เข้าถึงข้อมูลได้ง่ายสะดวกและมีประสิทธิภาพ การเข้าถึงข้อมูลของผู้ใช้อาจเป็นการสร้างฐานข้อมูล การแก้ไขฐานข้อมูล หรือการตั้งคำถามเพื่อให้ข้อมูลมา โดยผู้ใช้ไม่จำเป็นต้องรับรู้เกี่ยวกับรายละเอียดภายในโครงสร้างของฐานข้อมูล เปรียบเสมือนเป็นสื่อกลางระหว่างผู้ใช้และโปรแกรมต่าง ๆ ที่เกี่ยวข้องกับการใช้ฐานข้อมูล
6. ไฟล์ (file) หรือแฟ้มข้อมูล การประมวลผลข้อมูลเพื่อให้ได้สารสนเทศ จะมีองค์ประกอบที่สำคัญอย่างหนึ่งคือ แฟ้มข้อมูล ความหมายของแฟ้มข้อมูลหนึ่ง ๆ นั้น มักจะเป็นเอกสารที่เป็นเรื่องเดียวกันและจัดเก็บรวบรวมไว้เป็นแฟ้มข้อมูลเพื่อสะดวกในการค้นหาข้อมูล เช่น แฟ้มข้อมูลประวัติพนักงาน การเก็บรวบรวมข้อมูลในรูปของเอกสารเพื่อประโยชน์ในการใช้งาน ถ้าข้อมูลที่เก็บรวบรวมไว้มีจำนวนน้อยความยุ่งยากในการค้นหาหรือในการจัดเก็บก็จะไม่เกิดขึ้น แต่ถ้าข้อมูลที่เก็บรวบรวมไว้มีจำนวนมากจะมีปัญหาเกิดขึ้นในเรื่องของการค้นหาข้อมูลนั้นและสิ้นเปลืองพื้นที่ในการจัดเก็บข้อมูลนั้น ๆ วิธีการแก้ปัญหาการจัดเก็บแฟ้มข้อมูลที่อยู่ในรูปของเอกสารเมื่อข้อมูลมีจำนวนมากขึ้นก็คือการนำข้อมูลเหล่านั้นเก็บไว้ในระบบคอมพิวเตอร์ ข้อมูลทั้งหมดจะถูกเก็บรวบรวมไว้เป็นแฟ้มข้อมูล เช่นเดียวกับการจัดเก็บเป็นเอกสารแต่จะเป็นแฟ้มข้อมูลที่ถูกจัดเก็บไว้ในอุปกรณ์ของคอมพิวเตอร์ เช่น แผ่นจานบันทึกแม่เหล็กหรือเทปแม่เหล็ก
ลักษณะของระบบแฟ้มข้อมูล
1. ระเบียนขนาดคงที่ (fixed length record)โดยปกติแล้วภายในแฟ้มข้อมูลจะจัดเก็บระเบียนอยู่ในรูปแบบใดแบบหนึ่งโดยเฉพาะ ทุกระเบียนจะประกอบด้วยหน่วยข้อมูลย่อยที่เหมือน ๆ กัน นั่นคือ โครงสร้างของทุกระเบียนในแฟ้มข้อมูลจะเป็นแบบเดียวกันหมด ถ้าขนาดของระเบียนมี จำนวนตัวอักขระเท่ากันหมดในทุก ๆ ระเบียนของแฟ้มข้อมูล ระเบียนนั้นจะถูกเรียกว่าระเบียนขนาดคงที่ (fixed length record)
2. ระเบียนที่มีความยาวแปรได้ (variable length record) คือทุกเรคคอร์ดอาจจะมีจำนวนฟิลด์ต่างกัน และแต่ละฟิลด์ก็อาจจะมีความยาวต่างกันได้ แฟ้มข้อมูลประเภทนี้มีลักษณะโครงสร้างแบบพิเศษที่ช่วยให้คอมพิวเตอร์สามารถบอกได้ว่าแต่ละเรคคอร์ดมีความยาวเท่าใด และแต่ละฟิลด์เริ่มต้นตรงไหนและจบตรงไหนตัวอย่างของแฟ้มประเภทนี้ได้แก่ แฟ้มบันทึกรายการใบสั่งซื้อสินค้า แต่ละเรคคอร์ดจะแทนใบสั่งสินค้าหนึ่งใบและใบสั่งสินค้าแต่ละใบอาจจะมีรายการสินค้าที่สั่งซื้อไม่เท่ากัน
การจัดการแฟ้มข้อมูล
1. การสร้างแฟ้มข้อมูล (file creating) คือ การสร้างแฟ้มข้อมูลเพื่อนำมาใช้ในการประมวลผล ส่วนใหญ่จะสร้างจากเอกสารเบื้องต้น (source document) การสร้างแฟ้มข้อมูลจะต้องเริ่มจากการพิจารณากำหนดสื่อข้อมูลการออกแบบฟอร์มของระเบียน การกำหนดโครงสร้างการจัดเก็บแฟ้มข้อมูล (file organization) บนสื่ออุปกรณ์
2. การปรับปรุงรักษาแฟ้มข้อมูล แบ่งออกได้ 2 ประเภท คือ
1. การค้นคืนระเบียนในแฟ้มข้อมูล (retrieving) คือ การค้นหาข้อมูลที่ต้องการหรือเลือกข้อมูลบางระเบียนมาใช้เพื่องานใดงานหนึ่ง การค้นหาระเบียนจะทำได้ ด้วยการเลือกคีย์ฟิลด์ เป็นตัวกำหนดเพื่อที่จะนำไปค้นหาระเบียนที่ต้องการในแฟ้มข้อมูล ซึ่งอาจจะมีการกำหนเงื่อนไขของการค้นหา เช่น ต้องการหาว่าพนักงานที่ชื่อสมชายมีอยู่กี่คน
2. การปรับเปลี่ยนข้อมูล (updating) เมื่อมีแฟ้มข้อมูลที่จะนำมาใช้ในการประมวลผลก็จำเป็นที่จะต้องทำหรือรักษาแฟ้มข้อมูลนั้นให้ทันสมัยอยู่เสมอ อาจจะต้องมีการเพิ่มบางระเบียนเข้าไป (adding) แก้ไขเปลี่ยนแปลงค่าฟิลด์ใดฟิลด์หนึ่ง (changing) หรือลบบางระเบียนออกไป (deleting)
ประเภทของแฟ้มข้อมูล
1. แฟ้มข้อมูลหลัก (master file)แฟ้มข้อมูลหลักเป็นแฟ้มข้อมูลที่บรรจุข้อมูลพื้นฐานที่จำเป็นสำหรับระบบงาน และเป็นข้อมูลหลักที่เก็บไว้ใช้ประโยชน์ข้อมูลเฉพาะเรื่องไม่มีรายการเปลี่ยนแปลงในช่วงปัจจุบัน มีสภาพค่อนข้างคงที่ไม่เปลี่ยนแปลงหรือเคลื่อนไหวบ่อยแต่จะถูกเปลี่ยนแปลงเมื่อมีการสิ้นสุดของข้อมูล เป็นข้อมูลที่สำคัญที่เก็บไว้ใช้ประโยชน์ ตัวอย่าง เช่น แฟ้มข้อมูลหลักของนักศึกษาจะแสดงรายละเอียดของนักศึกษา ซึ่งมี ชื่อนามสกุล ที่อยู่ ผลการศึกษา แฟ้มข้อมูลหลักของลูกค้าในแต่ละระเบียนของแฟ้มข้อมูลนี้จะแสดงรายละเอียดของลูกค้า เช่น ชื่อสกุล ที่อยู่ หรือ ประเภทของลูกค้า
2. แฟ้มข้อมูลรายการเปลี่ยนแปลง (transaction file)แฟ้มข้อมูลรายการเปลี่ยนแปลงเป็นแฟ้มข้อมูลที่ประกอบด้วยระเบียนข้อมูลที่มีการเคลื่อนไหว ซึ่งจะถูกรวบรวมเป็นแฟ้มข้อมูลรายการเปลี่ยนแปลงที่เกิดขึ้นในแต่ละงวดในส่วนที่เกี่ยวข้องกับข้อมูลนั้น แฟ้มข้อมูลรายการเปลี่ยนแปลงนี้จะนำไปปรับรายการในแฟ้มข้อมูลหลัก ให้ได้ยอดปัจจุบัน ตัวอย่างเช่น แฟ้มข้อมูลลงทะเบียนเรียนของนักศึกษา
3. แฟ้มข้อมูลตาราง (table file)แฟ้มข้อมูลตารางเป็นแฟ้มข้อมูลที่มีค่าคงที่ ซึ่งประกอบด้วยตารางที่เป็นข้อมูลหรือชุดของข้อมูลที่มีความเกี่ยวข้องกันและถูกจัดให้อยู่รวมกันอย่างมีระเบียบ โดยแฟ้มข้อมูลตารางนี้จะถูกใช้ในการประมวลผลกับแฟ้มข้อมูลอื่นเป็นประจำอยู่เสมอ เช่น ตารางอัตราภาษี ตารางราคาสินค้าตัวอย่าง
4. แฟ้มข้อมูลเรียงลำดับ (sort file) แฟ้มข้อมูลเรียงลำดับเป็นการจัดเรียงระเบียนที่จะบรรจุในแฟ้มข้อมูลนั้นใหม่ โดยเรียงตามลำดับค่าของฟิลด์ข้อมูลหรือค่าของข้อมูลค่าใดค่าหนึ่งในระเบียนนั้นก็ได้ เช่น จัดเรียงลำดับตาม วันเดือนปี ตามลำดับตัวอักขระเรียงลำดับจากมากไปหาน้อยหรือจากน้อยไปหามาก เป็นต้นแฟ้มข้อมูลรายงาน (report file) เป็นแฟ้มข้อมูลที่ถูกจัดเรียงระเบียบตามรูปแบบของรายงานที่ต้องการแล้วจัดเก็บไว้ในรูปของแฟ้มข้อมูล ตัวอย่าง เช่น แฟ้มข้อมูลรายงานควบคุมการปรับเปลี่ยนข้อมูลที่เกิดขึ้นในขณะปฏิบัติงานแต่ละวัน
การจัดโครงสร้างแฟ้มข้อมูล (file organization) เป็นการกำหนดวิธีการที่ระเบียนถูกจัดเก็บอยู่ในแฟ้มข้อมูลบนอุปกรณ์ที่ใช้เก็บข้อมูล ซึ่งลักษณะโครงสร้างของระเบียนจะถูกจัดเก็บไว้เป็นระบบ โดยมีวัตถุประสงค์เพื่อให้การจัดเก็บข้อมูลและการเข้าถึงข้อมูลมีความสะดวกรวดเร็ว การจัดโครงสร้างของแฟ้มข้อมูลอาจแบ่งได้เป็น 3 ลักษณะคือ
1. โครงสร้างของแฟ้มข้อมูลแบบลำดับ (sequential file) เป็นการจัดแฟ้มข้อมูซึ่งระเบียนภายในแฟ้มข้อมูลจะถูกบันทึกโดยเรียงตามลำดับคีย์ฟิลด์ หรืออาจจะไม่เรียงลำดับตามคีย์ฟิลด์ก็ได้ ข้อมูลจะถูกบันทึกลงในสื่อบันทึกข้อมูลโดยจะถูกบันทึกไว้ในตำแหน่งที่อยู่ติด ๆ กัน การนำข้อมูลมาใช้ของโครงสร้างแฟ้มข้อมูลแบบลำดับจะต้องอ่านข้อมูลไปตามลำดับจะเข้าถึงข้อมูลโดยตรงไม่ได้ ส่วนการจัดโครงสร้างแฟ้มข้อมูลแบบลำดับตามดัชนี เป็นการจัดข้อมูลแบ่งตามหมวดหมู่ สรุปเป็นตารางซึ่งมีลักษณะคล้ายสารบาญของหนังสือ การจัดข้อมูลแบบนี้ทำให้สามารถเข้าถึงข้อมูลได้ง่าย โดยตรงไปที่ตารางซึ่งเป็นดัชนี จะทำให้ทราบตำแหน่งของข้อมูลนั้น โดยไม่ต้องอ่านข้อมูลทีละระเบียน การจัดโครงสร้างของแฟ้มข้อมูลแบบสัมพัทธ์ แฟ้มข้อมูลแบบสัมพัทธ์นี้ข้อมูลจะถูกบันทึกโดยอาศัยกลไกการกำหนดตำแหน่งของข้อมูล ซึ่งจะช่วยให้สามารถตรงไปถึงหรือบันทึกข้อมูลที่ต้องการได้โดยไม่ต้องอ่านหรือผ่านข้อมูลที่อยู่ในลำดับก่อนหน้าระเบียนที่ต้องการ การดึงหรือการบันทึกข้อมูลจะสามารถทำได้อย่างรวดเร็ว ในโครงสร้างแฟ้มข้อมูลแบบลำดับประกอบด้วยระเบียนที่จัดเรียงไปตามลำดับอย่างต่อเนื่องเมื่อจัดสร้างแฟ้มข้อมูลโดยจะบันทึกระเบียนเรียงตามลำดับการบันทึกระเบียนจะถูกเขียนต่อเนื่องไปตามลำดับจากระเบียนที่ 1 ถึงระเบียน n และการอ่านระเบียนภายในแฟ้มข้อมูลก็ต้องใช้วิธีการอ่านแบบต่อเนื่องตามลำดับคือ อ่านตั้งแต่ต้นแฟ้มข้อมูลไปยังท้ายแฟ้มข้อมูล โดยอ่านระเบียนที่ 1,2,3 และ 4 มาก่อน ตัวอย่างเช่น ถ้าต้องการอ่านระเบียนที่ 8 ก็ต้องอ่านระเบียนลำดับที่ 1,2,3,4,5,6,7 ก่อน
2. โครงสร้างของแฟ้มข้อมูลแบบลำดับตามดัชนี (index sequential file) เป็นวิธีการเก็บข้อมูลโดยแต่ละระเบียนในแฟ้มข้อมูลจะมีค่าของคีย์ฟิลด์ที่ใช้เป็นตัวระบุระเบียนนั้น ค่าคีย์ฟิลด์ของแต่ละระเบียนจะต้องไม่ซ้ำกับค่าคีย์ฟิลด์ในระบบอื่น ๆ ในแฟ้มข้อมูลเดียวกัน เพราะการจัดโครงสร้างแฟ้มข้อมูลแบบนี้จะใช้คีย์ฟิลด์เป็นตัวเข้าถึงข้อมูล การเข้าถึงข้อมูลหรือการอ่านระเบียนใด ๆ จะเข้าถึงได้อย่างสุ่ม การจัดโครงสร้างแฟ้มข้อมูลต้องบันทึกลงสื่อข้อมูลที่เข้าถึงข้อมูลได้โดยตรง เช่น จานแม่เหล็ก การสร้างแฟ้มข้อมูลประเภทนี้ไม่ว่าจะสร้างครั้งแรกหรือสร้างใหม่ ข้อมูลแต่ละระเบียนต้องมีฟิลด์หนึ่งใช้เป็นคีย์ฟิลด์ของข้อมูล ระบบปฏิบัติการจะนำคีย์ฟิลด์ของข้อมูลไปสร้างเป็นตารางดัชนีทำให้สามารถเข้าถึงระเบียนได้เร็ว นอกจากจะเข้าถึงระเบียนใด ๆ ได้เร็วขึ้นแล้วยังมีประโยชน์สามารถเพิ่มระเบียนเข้าในส่วนใด ๆ ของแฟ้มข้อมูลได้ ในแต่ละแฟ้มข้อมูลที่ถูกบันทึกลงสื่อข้อมูลจะมีตารางดัชนีทำให้เข้าถึงระเบียนใด ๆ ได้รวดเร็วขึ้น
โครงสร้างแฟ้มข้อมูลแบบลำดับตามดัชนีประกอบด้วย
1. ดัชนี (index) ของแฟ้มข้อมูลจะเก็บค่าคีย์ฟิลด์ของข้อมูล และที่อยู่ในหน่วยความจำ (address) ที่ระเบียนนั้นถูกนำไปบันทึกไว้ ซึ่งดัชนีนี้จะต้องเรียงลำดับจากน้อยไปมาก หรือจากมากไปน้อยโดยที่ส่วนของดัชนีจะมีตัวบ่งชี้ไปยังที่อยู่ในหน่วยความจำ เพื่อจะได้นำไปถึงระเบียนข้อมูลในข้อมูลหลัก
2. ข้อมูลหลัก (data area) จะเก็บระเบียนข้อมูล ซึ่งระเบียนนั้นอาจจะเรียงตามลำดับจากน้อยไปมากหรือจากมากไปน้อย ในการจัดลำดับของข้อมูลหลักอาจจะจัดข้อมูลออกไปกลุ่ม ๆ โดยจะเว้นที่ไว้เพื่อให้มีการปรับปรุงแฟ้มข้อมูลได้
3. โครงสร้างของแฟ้มข้อมูลแบบสัมพัทธ์ (relative file) เป็นโครงสร้างที่สามารถเข้าถึงข้อมูลหรืออ่านระเบียนใด ๆ ได้โดยตรง วิธีนี้เป็นการจัดเรียงข้อมูลเข้าไปในแฟ้มข้อมูลโดยอาศัยฟิลด์ข้อมูลเป็นตัวกำหนดตำแหน่งของระเบียนนั้น ๆ โดยค่าของคีย์ฟิลด์ข้อมูลในแต่ละระเบียนของแฟ้มข้อมูลจะมีความสัมพัทธ์กับตำแหน่งที่ระเบียนนั้นถูกจัดเก็บไว้ในหน่วยความจำ ค่าความสัมพัทธ์นี้ เป็นการกำหนดตำแหน่ง (mapping function) ซึ่งเป็นฟังก์ชั่นที่ใช้ในการเปลี่ยนแปลงคีย์ฟิลด์ของระเบียนให้เป็นตำแหน่งในหน่วยความจำ โดยที่การจัดเรียงลำดับที่ของระเบียนไม่จำป็นต้องมีความสัมพันธ์กับการจัดลำดับที่ของระเบียนที่ถูกจัดเก็บไว้ในหน่วยความ การจัดเก็บข้อมูลลงแฟ้มข้อมูลแบบสัมพัทธ์ (relative file) จะถูกจัดเก็บอยู่บนสื่อที่สามารถเข้าถึงได้โดยตรง เช่น แผ่นจานแม่เหล็ก ลักษณะโครงสร้างแฟ้มข้อมูลแบบสัมพัทธ์จะประกอบด้วยตำแหน่งในหน่วยความจำ ซึ่งเกิดจากนำคีย์ฟิลด์ของระเบียนมาทำการกำหนดตำแหน่ง ซึ่งการกำหนดตำแหน่งนี้จะทำการปรับเปลี่ยนค่าคีย์ฟิลด์ของระเบียนให้เป็นตำแหน่งในหน่วยความจำที่คำนวณได้ แฟ้มข้อมูลหลัก แฟ้มข้อมูลนี้ประกอบด้วยระเบียนที่จัดเรียงตามตำแหน่งในหน่วยความจำโดยจะเรียงจากระเบียนที่ 1 จนถึง N แต่จะไม่เรียงลำดับตามค่าของคีย์ฟิลด์
โครงสร้างบันทึกและ บันทึกคีย์
เขตข้อมูลเฉพาะในแต่ละระเบียนของคอมพิวเตอร์ ไฟล์เป็นส่วนหนึ่งของโครงสร้างบันทึก
Record Keys เป็นตัวระบุสำหรับบันทึก:
คีย์หลักไม่ซ้ำกันสำหรับแต่ละระเบียน ปุ่มรองคือ
- ตัวระบุเฉพาะสำหรับบันทึกและ
- ใช้สำหรับค้นหาไฟล์เพื่อหาข้อมูลเฉพาะ คีย์ต่างประเทศเปิดใช้งานบันทึกฐานข้อมูล อ้างอิงหนึ่งรายการขึ้นไปในไฟล์อื่น
การบริหารและเอกสาร (Administration and Documentation)
การบริหาร หมายถึง (Administration) เป็นการลงมือกระทำหลังจากวางหลักการบริหารแล้ว ในขั้นตอนนี้ต้องใช้ทั้งศาสตร์และศิลป์เพื่อที่จะนำเอาทรัพยากรที่มีอยู่ทั้ง บุคลากร วัสดุ งบประการ มาจัดการตามหลักการที่วางไว้ โดยมีกระบวนการที่ชัดเจนเพื่อทำให้เกิดความสำเร็จเป็นรูปธรรมตามวัตถุประสงค์ที่วางไว้มีคำสำคัญที่คล้ายกันอยู่ 2 คำคือ หลักการบริหาร และ การบริหาร ซึ่งมีความต่อเนื่องกัน คือ หลักการบริหารนั้นว่าด้วย แนวคิดที่เป็นหลักการว่าทำอย่างไรจึงจะทำให้ประสบความสำเร็จ แต่การบริหารเป็นการนำหลักการที่วางไว้มาลงมือทำหัวใจของการบริหารที่เด่นๆ คือ ผู้บริหารไม่ได้เป็นผู้ปฏิบัติ แต่เป็นผู้ใช้ศิลปะทำให้ผู้ปฏิบัติทำงานจนสำเร็จตามจุดมุ่งหมายตามการคิดและตัดสินใจของผู้บริหาร การบริหาร (Administration) นั้นต่างจากการจัดการ (Management) อยู่เล็กน้อย ตรงที่การบริหารสนใจและสัมพันธ์เกี่ยวกับนโยบายในทางปฏิบัติ ส่วนการจัดการมุ่งไปที่ทำอย่างไรให้ปฏิบัติการบริหารจะอยู่ภายใต้เงื่อนไขคือวัตถุประสงค์ บุคคล ทรัพยากร กระบวนการ การบริหารต้องอาศัยความร่วมแรงร่วมใจของบุคลากรอย่างเต็มใจจึงจะนำไปสู่กลุ่มที่มีพลังในการขับเคลื่อนงานไปสู่ความสำเร็จ ทั้งที่ต้องอาศัยทักษะของผู้บริหารที่จะปลุกและกระตุ้นให้กลุ่มมีพลังตามที่ต้องการการบริหารแม้ไม่มีตัวตนแต่ทรงอิทธิพล ปรากฏผลที่จับต้องได้แสดงให้เห็นถึงทักษะและความสามารถของผู้บริหารที่สามารถประเมินคุณภาพได้จากผลงาน
แนวทางการประเมินผู้บริหารนั้น สามารถพิจารณาผ่าน 3 ทางได้แก่
1.โครงสร้าง ให้ดูที่ความสัมพันธ์ระหว่างผู้บริหารและผู้ใต้บังคับบัญชาตามลำดับขั้นตอนของสายงาน ตามการจัดองค์การ
2.หน้าที่ ผู้บริหารที่ดีสามารถระบุหน้าที่ บทบาท ความรับผิดชอบตลอดจนสนับสนุนทรัพยากรให้แก่ผู้ปฏิบัติงานได้ดี
3.ทางปฏิบัติ ผู้บริหารที่ดีทำให้ผู้ปฏิบัติงานพร้อมและเต็มใจทำงานอย่างเต็มความสามารถ
เอกสาร (Documentation) คือ เอกสารที่เขียนอธิบายขั้นตอนเกี่ยวกับการใช้ชุดคำสั่ง หรือรายละเอียดต่าง ๆ เกี่ยวกับการใช้คอมพิวเตอร์ประมวลผลงานหนึ่ง ๆ โดยปกติ ชุดคำสั่งทุกชุดควรมีเอกสารประกอบ เพื่อสะดวกในการนำมาใช้ใหม่ภายหลัง
ความเห็นสำรองและรักษาความปลอดภัย (Concurrency Backup and Security)
การควบคุมภาวะพร้อมกันเป็นสิ่งจำเป็น
-ป้องกันการเข้าถึงไฟล์เดียวกันของผู้ใช้หลายคน
-ทำธุรกรรมตามลำดับ
ข้อมูลในฐานข้อมูลการบัญชีจำนวนมากจะต้องได้รับการคุ้มครอง
- ถูกจัดเก็บโดยขั้นตอนการสำรองข้อมูลเพื่อดึง
- ได้รับการปกป้องจากการเข้าถึงโดยไม่ได้รับอนุญาตโดยการใช้รหัสผ่าน เทคนิคการเข้ารหัส
ขั้นตอนในการสร้างฐานข้อมูล REA (Steps in Creating Databases with REA)
บันทึกระบบบัญชีตามเหตุการณ์ (EBA) คือ กิจกรรมที่เกิดขึ้นจริง
REA เป็นเครื่องมือสำหรับการออกแบบฐานข้อมูล
AlS รวบรวมข้อมูลเกี่ยวกับองค์กร
- ทรัพยากรเหตุการณ์และตัวแทน (REA)
- ทรัพยากรเป็นทรัพย์สินขององค์กร
- กิจกรรมเป็นกิจกรรมที่ระบุตัวตนได้
- กระบวนการทางธุรกิจ
- ตัวแทนคือบุคคลที่เกี่ยวข้องกับธุรกิจกิจกรรม
ระบุเหตุการณ์และหน่วยงาน (Identify Events and Entities)
กระบวนการทางธุรกิจเกี่ยวข้องกับเหตุการณ์สองประเภท:
กิจกรรมทางเศรษฐกิจที่
- ส่งผลกระทบต่องบการเงินขององค์กร
กิจกรรมทางธุรกิจที่
- ส่งผลกระทบต่อองค์กรด้วยวิธีการเพิ่มมูลค่า
Entity-Relationship Model (E-R Model)
E-R Model เป็นโมเดลที่ใช้ในการออกแบบฐานข้อมูล ในระดับ conceptual ประกอบด้วยชุดของ object (Entity) และความสัมพันธ์ (relationship) ระหว่าง object E-R diagram สร้างขึ้นเพื่อสื่อความหมายของข้อมูลในระบบและแสดงให้เห็นความสัมพันธ์กันของข้อมูล
Entity & Entity Set
Entity คือ "สิ่งๆหนึ่ง" หรือ object ที่มีอยู่ ซึ่งแต่ละ object ก็แตกต่างกันไป
Entity Set คือ กลุ่มของ entity หรือ object ที่เป็น "ชนิดเดียวกัน" คือมีคุณสมบัติร่วมกันบางประการ เช่น นักศึกษาแต่ละคน ถือเป็น entity , กลุ่มของนักศึกษาในคณะวิศวกรรมศาสตร์ ถือเป็นหนึ่ง Entity Set ของนักศึกษา ซึ่งต่างจาก Entity Set ของ "วิชา" ซึ่งเก็บรวบรวม รายวิชาต่างๆ เป็นต้น
Properties or Attributes of an Entity
Entity หนึ่งๆ ประกอบด้วยคุณสมบัติ หรือ ลักษณะที่ต่างกันไป ข้อมูลที่แสดงถึงคุณลักษณะของ Entity เรียกว่าAttribute เช่น ข้อมูลนักศึกษาคนหนึ่ง ประกอบไปด้วย ชื่อ, รหัส, คณะ, วันเกิด, เพศ, ส่วนสูง, น้ำหนัก, ฯลฯ
ตัวอย่าง ข้อมูลของนักศึกษา ( Student )
โครงสร้างของ Student ประกอบด้วย attribute Student_Code, Student_Name, Faculty, Birthdate
ชนิดของ Attribute
Simple attribute คือ attribute ที่ประกอบด้วยค่าข้อมูลเดียว ซึ่งต่างจาก Composite attribute ที่ประกอบด้วยข้อมูลย่อย เช่น ข้อมูล Name ประกอบด้วย first name, middle name, lastname , address ประกอบด้วย เลขที่, ถนน, ตำบล, อำเภอ, จังหวัด, รหัสไปรษณีย์ เป็นต้น ส่วนข้อมูล เช่น เพศ, อายุ, ส่วนสูง, น้ำหนัก ถือเป็น simple attribute เพราะประกอบด้วยค่าข้อมูลเดียว
Single-valued Attribute คือ attribute ที่ entity หนึ่งๆ มีการเก็บค่าได้เพียงค่าเดียว เช่น ชื่อ, วันเกิด, รหัสประจำตัว แต่ละคนก็มีค่าข้อมูลเหล่านี้เพียงค่าเดียว แต่ Multivalued attribute คือ attribute ที่มีค่าได้มากกว่าหนึ่ง เช่น ข้อมูลของโรงเรียนที่นักศึกษา
เรียนจบมา บางคนอาจเรียนมาจากหลายโรงเรียน (เช่น ระดับ ประถม เรียนโรงเรียนหนึ่ง, ม.ต้น เรียนอีกโรงเรียนหนึ่ง, ม.ปลายได้เรียนอีกโรงเรียนหนึ่ง) , ข้อมูลเบอร์โทรศัพท์ ของบุคคล บางคนอาจมีเบอร์โทรติดต่อได้ มากกว่าหนึ่งหมายเลข เป็นต้น
Derived attribute คือ คุณสมบัติของ Entity ที่เป็นค่าข้อมูลที่สามารถ ได้มาจากข้อมูลอื่น เช่น รายได้รวมของ salesman ได้จากการรวมเงินเดือน และค่านายหน้า (commission) ที่ได้จากยอดขายที่ทำได้ในแต่ละเดือน เป็นต้น
Relationship และ Relationship set
Relationship คือ ความสัมพันธ์ระหว่าง Entity
Relationship Set คือ ชุดของ Relationship ชนิดเดียวกัน ซึ่งเป็นความสัมพันธ์ระหว่าง Entity Set
เช่น Relationship นักศึกษา Jim Jackson เข้าเรียนในวิชา Math 2, นักศึกษา John Harris เข้าเรียนในวิชา Physics 1 เป็น relationship และ Relationship set คือ ความสัมพันธ์ "การเข้าเรียน" (Attend) ระหว่าง นักศึกษา กับ วิชาเรียน (course)
หมายเหตุ โดยทั่วไปมักกล่าวถึง Entity หมายรวมถึง Entity Set กับ Relationship หมายถึง Relationship set ด้วย
รูปแบบความสัมพันธ์ ระหว่าง Entity Set
การแบ่งประเภทของ relationship โดยใช้ Mapping Cardinality คือ จำนวนการจับคู่กันในความสัมพันธ์ แบ่งออกเป็น 4 ประเภทดังนี้
1. One-to-One คือ ความสัมพันธ์ 1 ต่อ 1 นั่นคือ ในความสัมพันธ์จาก Entity Set A ไปยัง B สมาชิกของ A แต่ละตัวจับคู่กับ B ตัวเดียวเท่านั้น และ B หนึ่งตัวจับคู่กับ A เพียงตัวเดียว เช่น สมมติการมีบัญชีเงินฝากของธนาคารแห่งหนึ่ง กำหนดให้ลูกค้ามีบัญชีได้เพียง 1 เดียว และหนึ่งบัญชีมีเจ้าของเพียงคนเดียว ความสัมพันธ์ " การเป็นเจ้าของบัญชี " นี้ จัดเป็นแบบ 1-to-1
2. One-to-Many คือ ความสัมพันธ์ 1 ต่อ หลาย นั่นคือ ในความสัมพันธ์จาก Entity Set A ไปยัง B สมาชิกของ A แต่ละตัวจับคู่กับ B ได้มากกว่าหนึ่ง แต่ B หนึ่งตัวจับคู่กับ A เพียงตัวเดียวเท่านั้น เช่น หากธนาคารกำหนดให้ลูกค้า (Entity A) หนึ่งคนเปิดบัญชี ได้มากกว่าหนึ่ง แต่ บัญชีหนึ่งๆ มีเจ้าของเพียงหนึ่งเดียว ความสัมพันธ์ " การเป็นเจ้าของบัญชี " นี้ จัดเป็นแบบ 1-to-M
3. Many-to-One คือ ความสัมพันธ์ หลายต่อ 1 นั่นคือ ในความสัมพันธ์จาก Entity Set A ไปยัง B สมาชิกของ A แต่ละตัวจับคู่กับ B ได้ตัวเดียว แต่อาจซ้ำกันได้ คือ B ตัวเดียวกัน จะจับคู่กับ A ได้มากกว่าหนึ่ง เช่น ในความสัมพันธ์ การเป็นแม่ลูก แม่(Entity B) คนหนึ่งอาจมีลูกได้หลายคน แต่ลูก (Entity A) แต่ละคน มีแม่เพียงหนึ่งเดียว ซึ่ง ลูกหลายคนอาจมีแม่คนเดียวกันได้ ความสัมพันธ์นี้ จัดเป็น M-to-1
4. Many-to-Many คือ ความสัมพันธ์ หลายต่อหลาย นั่นคือ ในความสัมพันธ์จาก Entity Set A ไปยัง B สมาชิกของ A แต่ละตัวจับคู่กับ B ได้มากกว่าหนึ่ง และ B ก็จับคู่กับ A ได้มากกว่าหนึ่ง เช่นกัน เช่น การลงทะเบียนเรียน ในเทอมหนึ่งๆ นักศึกคนหนึ่งสามารถลงเรียนได้ มากกว่าหนึ่งวิชา (course) และ แต่ละ course ก็มีนักศึกษามาเข้าเรียนมากกว่าหนึ่งคน
ความสำคัญของการประมวลผลแบบระบบฐานข้อมูล
การจัดเก็บข้อมูลรวมเป็นฐานข้อมูลจะก่อให้เกิดประโยชน์ด้วยกันหลายประการ พอสรุปได้ดังนี้ 1. สามารถลดความซ้ำซ้อนของข้อมูลได้ 2. หลักเลี่ยงความขัดแย้งของข้อมูลได้ 3. สามารถใช้ข้อมูลร่วมกันได้ 4. สามารถรักษาความถูกต้องเชื่อถือได้ของข้อมูล 5. สามารถกำหนดความเป็นมาตรฐานเดียวกันของข้อมูลได้ 6. สามารถกำหนดระบบความปลอดภัยของข้อมูลได้ 7. เกิดความเป็นอิสระของข้อมูล
Key , Super key, Candiante key, Primary Key
ใน Entity set แต่ละ entity ย่อมแตกต่างกัน สิ่งที่ระบุได้ถึง Entity ที่แตกต่างกันแต่ละตัว ใน Entity set เรียกว่า Key
Super key คือ attribute หรือ กลุ่มของ attribute (attribute set ) ที่สามารถระบุถึง entity ที่แต่ละตัวได้ เช่น ชื่อ-สกุล และที่อยู่ของ นักศึกษา เป็น super key เพราะ สามารถบ่งชี้ถึง นักศึกษาทุกคนที่แตกต่างกันได้ทั้งหมด
Candidate key คือ attribute หรือ attribute set ที่เป็น minimal นั่นคือ ไม่มี subset ของ key นี้ ที่มีคุณสมบัติเป็น key อีก หรือ หากมีการเอา attribute หนึ่งใด ออกไปก็จะไม่ใช่ key เช่น รหัสนักศึกษา (นศ. ทุกคนมีรหัสเพียงรหัสเดียว ที่แตกต่างกัน) เป็น candidate key , แต่ รหัสนักศึกษากับชื่อ หรือ รหัสนักศึกษา, อายุ, เพศ และคณะ ไม่ใช่ candidate key เพราะไม่ minimal เพราะเพียงแค่ รหัสนักศึกษา อย่างเดียว ก็เป็น key ได้แล้ว
Primary key คือ candidate key ตัวหนึ่ง ที่ถูกเลือกให้เป็น key ที่ใช้อ้างอิงถึงแต่ละ entity ใน entity set เช่น อาจเลือก รหัสนักศึกษาเป็น Primary key สำหรับ entity set นักศึกษา ได้
ข้อสังเกต :
- ทุก attribute ของ Entity รวมกัน จัดเป็น super key เสมอ เพราะไม่มี entity ใด ที่มีข้อมูลซ้ำกันหมด
- key ที่ประกอบด้วย attribute เพียงหนึ่งเดียว จัดเป็น candidate เสมอ (minimal แล้ว)
- ทุก Candidate key จัดเป็น Super key แต่ มี Super key บางตัวที่ไม่ใช่ candidate key ( Candidate key Í Super key )
Entity - Relationship Diagram ( E-R Diagram )
ขั้นตอนการสร้าง E-R diagram
1. จากการวิเคราะห์ ข้อมูลในระบบ ค้นหา Entity ทั้งหมด
2. ระบุ Attribute ของ Entity และ Primary key
3. ระบุความสัมพันธ์ ระหว่าง Entity
ตัวอย่าง E-R Diagram แสดงข้อมูลของพนักงาน (EMPLOYEE) และ หน่วยงานหรือแผนก ( Department) ในองค์กรแห่งหนึ่ง
สัญลักษณ์ที่ใช้ใน E-R Diagram
ประเภทของ Entity
1. Regular Entity (หรือ strong entity) คือ entity ที่มี attribute ของ entity นั้นเอง กำหนดเป็น Key (หรือ identify ) ได้
2. Weak Entity คือ entity ที่ ต้องใช้ attribute จาก Entity อื่น ร่วมด้วย เพื่อกำหนด เป็น key ให้กับ entity นี้
Regular Entity เขียนแทนด้วยสี่เหลียมผืนผ้า มีชื่อ Entity ข้างใน Weak Entity เขียนแทนด้วยรูปสี่เหลี่ยมผืนผ้าซ้อนกัน (มีกรอบสองชั้น) และความสัมพันธ์ ที่เป็นเป็นตัวอ้างถึง attribute จาก entity อื่น ที่นำมากำหนดร่วมเป็น key เรียกว่า Identifying Relation เขียนแทนด้วย รูปสี่เหลี่ยมข้าวหลามตัวซ้อนกันสองชั้น
ตัวอย่าง Weak Entity การเก็บเวลา เข้า-ออก ของพนักงาน เนื่องจาก เป็นไปได้ที่ พนักงานเข้า และ เลิกงาน พร้อมกัน ได้ ดังนั้นการจะระบุถึงเวลาเข้า-ออก ต้องอ้างถึงตัวพนักงานด้วย ว่าเป็นเวลาเข้า-ออก ของพนักงานคนไหน
Attribute ของ Entity
Simple Attribute เขียนชื่อ attribute อยู่ในรูปวงรี ลากเส้นเชื่อมโยงไปยัง Entity
Composite Attribute เขียน attribute ซึ่งเป็นส่วนประกอบย่อย เชื่อมโยงไปยัง composite attribute
Key Attribute ขีดเส้นใต้ attribute ที่กำหนดให้เป็น Primary key ของ Entity
Single-value Attribute วงรีของ attribute มีกรอบชั้นเดียว เส้นเชื่อมไปยัง Entity มีเส้นเดียว
Multi valued Attribute วงรีของ attribute มีกรอบชั้น 2 ชั้น หรือ ใช้เส้นคู่ ลากเชื่อมโยงไปยัง Entity
Derived Attribute วงรีของ attribute มีกรอบเป็นเส้นประ หรือ ใช้เส้นประลากเชื่อมโยงไปยัง Entity
ความสัมพันธ์ Relationship
Relationship คือความสัมพันธ์ ระหว่าง Entity set เขียนแทนด้วย รูปสี่เหลี่ยมข้าวหลามตัด (diamond) และมีเส้นเชื่อมโยงไปยัง Entity ที่มีความสัมพันธ์กัน ภายในรูปสี่เหลี่ยมข้าวหลามตัด ระบุชื่อของความสัมพันธ์ (คำนาม หรือ กริยา หรือ บุพบท)
คุณสมบัติ(attribute) ของความสัมพันธ์ ให้ลากเส้นเชื่อมระหว่าง Relationship กับ attribute นั้น
ประเภทของ Relationship ( แบ่งตาม Entity ที่มาเกี่ยวข้อง )
1. Binary Relationship คือ ความสัมพันธ์ระหว่าง 2 Entity
2. N-ary Relationship คือความสัมพันธ์ระหว่าง N Entity ( N มากกว่าหรือเท่ากับ 3 ) เช่น การฝากเงิน เข้าบัญชีธนาคาร มีความสัมพันธ์ระหว่าง ผู้ฝาก, เงิน และ บัญชีธนาคาร เป็นต้น
3. Recursive Relationship คือความสัมพันธ์ ใน Entity เดียวกัน เช่น ความสัมพันธ์ระหว่างบุคคล เช่น การเป็นเจ้านาย-ลูกน้อง ใน Entity พนักงาน เป็นต้น อาจมีการเขียนบทบาท (Role indicator) กำกับ ที่เส้นเชื่อมโยงความสัมพันธ์
Generalization Hierarchy
Generalization Hierarchy คือโครงสร้าง แสดงลักษณะของ Entity ที่เป็น Super type (super class) และ Sub type (subclass) นั่นคือ Entity ที่มีลักษณะบางอย่างร่วมกัน หรือมีความเป็นทั่วไป ก็จะเป็น Super class และ Entity ที่เป็นสมาชิกของ super class นั้นอาจมีลักษณะพิเศษเฉพาะอย่างแตกต่างกัน
Attribute Inheritance
ทุก subclass จะมีทุก attribute ของ super class แต่หาก subclass ใด มี attribute เป็นของตัวเองที่ต่างจาก subclass อื่น ก็จะถูกเขียนที่ Entity ของ subclass นั้น
Coverage Property
คือ คุณสมบัติความครอบคลุม นั่นคือความสัมพันธ์ของ Entity ใน Super class และ Subclass ต่างๆ ซึ่งแบ่งออกเป็น 4 ลักษณะคือ
1. Total Coverage คือ สมาชิกทุกตัวของ Super class ถูกจัดใน subclass ใด subclass หนึ่ง นั่นคือ สมาชิกทุกตัวของsubclass รวมกัน จะได้เป็น super class เช่น ในมหาวิทยาลัย นักศึกษา (ทั่วไป) อาจแบ่งได้เป็นสองประเภทคือ นักศึกษาระดับปริญญาตรี ( undergraduate student) กับนักศึกษาที่สูงกว่าระดับปริญญาตรี (graduate student) ซึ่งการแบ่งนี้ครอบคลุมทั่วถึง นั่นคือ นักศึกษาทุกคน จะต้องจัดอยู่ในประเภทใดประเภทหนึ่ง
2. Partial Coverage คือ มีสมาชิกเพียงบางส่วนเท่านั้น ของ Super class ที่ถูกจัดแบ่งเป็น subclassได้ มีสมาชิกบางส่วนของ Super class ที่ไม่เป็นสมาชิกของ subclass ใด เช่น ในบริษัทแห่งหนึ่ง มีพนักงานจำนวนหนึ่ง มีการแบ่งพนักงาน ตามตำแหน่งงาน ดังนี้ Engineer, Salesman, Accountant และ Programmer จะพบว่ามีพนักงานส่วนหนึ่งที่ไม่ได้เป็นสมาชิกของ subclass ดังกล่าว ก็ถือเป็นพนักงานทั่วไป
3. Exclusive coverage คือ การไม่มีสมาชิกที่ซ้ำซ้อนกันระหว่าง subclass เช่น การแบ่ง นักศึกษา ออกเป็น graduate student และ undergraduate student ไม่มีนักศึกษาคนใดที่เป็นได้สองอย่างพร้อมกัน
4. Overlapping coverage คือ การที่ subclass มีสมาชิกบางส่วนซ้ำกันได้ เช่น หากแบ่งพนักงานออกเป็น Engineer, Salesman, Accountant และ Programmer อาจมีพนักงานบางคน ที่เป็นได้ทั้ง Engineer และ Programmer หรือ บางคนเป็น Salesman และ Engineer ได้
ตัวอย่าง E-R Diagram ของมหาวิทยาลัยแห่งหนึ่ง
โครงสร้างแบบลำดับขั้น (Hierarchical Structure)
เป็นวิธีที่ดีที่สุดวิธีหนึ่งในการจัดระบบโครงสร้างที่มีความซับซ้อนของข้อมูล โดยแบ่งเนื้อหา ออกเป็นส่วนต่างๆ และมีรายละเอียดย่อยๆ ในแต่ละส่วนลดหลั่นกันมาในลักษณะแนวคิดเดียวกับ แผนภูมิองค์กร จึงเป็นการง่ายต่อการทำความเข้าใจกับโครงสร้างของเนื้อหาในเว็บลักษณะนี้ ลักษณะเด่นเฉพาะของ เว็บประเภทนี้คือการมีจุดเริ่มต้นที่จุดร่วมจุดเดียว นั่นคือ โฮมเพจ (Homepage) และเชื่อมโยงไปสู่เนื้อหา ในลักษณะเป็นลำดับจากบนลงล่าง
การสร้างบันทึกและ ความสัมพันธ์ของฐานข้อมูล (Creating Records and Database Relationships)
การสร้างบันทึกแต่ละระเบียนสำหรับเขตข้อมูล ความสัมพันธ์ฐานข้อมูล เชื่อมโยงตารางเข้าด้วยกัน ช่วยให้ผู้ใช้สามารถสร้างรายงานหลากหลาย เพื่อสร้างความสัมพันธ์ฐานข้อมูล เปิดหน้าต่างความสัมพันธ์ เลือกตารางและ เชื่อมโยงตาราง
อ้างอิง
コメント