องค์ประกอบของระบบฐานข้อมูล | |||||||||||||||||||
องค์ประกอบของฐานข้อมูล
|
การจักการข้อมูล
วันเสาร์ที่ 2 พฤศจิกายน พ.ศ. 2556
องค์ประกอบของระบบฐานข้อมูล
ระบบฐานข้อมูล
ตัวอย่าง ระบบฐานข้อมูล
ข้อมูลพื้นฐานเกี่ยวกับฐานข้อมูล
บทความนี้จะให้ภาพรวมของฐานข้อมูลโดยย่อ ได้แก่ ฐานข้อมูลคืออะไร ทำไมคุณอาจต้องการใช้ และส่วนประกอบต่างๆ ของฐานข้อมูลสามารถทำอะไรได้บ้าง ศัพท์บัญญัติที่ปรากฏอาจใช้เฉพาะกับฐานข้อมูล Microsoft Office Access 2007 แต่แนวคิดในเรื่องนี้สามารถนำไปใช้กับผลิตภัณฑ์ต่างๆ ที่เกี่ยวกับฐานข้อมูลได้ทั้งหมด
ในบทความนี้
ฐานข้อมูลคืออะไร
ฐานข้อมูลเป็นเครื่องมือสำหรับการเก็บรวบรวมและจัดระเบียบข้อมูล ฐานข้อมูลสามารถเก็บข้อมูลเกี่ยวกับบุคคล ผลิตภัณฑ์ ใบสั่งซื้อ หรือสิ่งอื่นใดก็ได้ ฐานข้อมูลจำนวนมากเริ่มมาจากรายการในโปรแกรมประมวลผลคำหรือโปรแกรมกระดาษคำนวณ เมื่อรายการมีขนาดใหญ่ขึ้น ความซ้ำซ้อนและความไม่สอดคล้องกันของข้อมูลจะเริ่มปรากฏขึ้น การดูข้อมูลในฟอร์มรายการเริ่มไม่เข้าใจ และมีข้อจำกัดในการค้นหาหรือดึงเซตย่อยของข้อมูลมาตรวจทาน เมื่อปัญหาดังกล่าวเกิดขึ้นแล้ว จึงเป็นการดีที่จะโอนถ่ายข้อมูลไปยังฐานข้อมูลที่สร้างขึ้นด้วยระบบการจัดการฐานข้อมูล (DBMS) เช่น Office Access 2007
ฐานข้อมูลในระบบคอมพิวเตอร์เป็นคอนเทนเนอร์ของวัตถุ โดยฐานข้อมูลหนึ่งชุดสามารถมีตารางได้มากกว่าหนึ่งตาราง ตัวอย่างเช่น ระบบติดตามสินค้าคงคลังหนึ่งระบบจะใช้ข้อมูลจากตารางสามตารางไม่ใช่จากฐานข้อมูลสามชุด แต่ฐานข้อมูลหนึ่งชุดนั้นสามารถมีตารางได้สามตาราง เว้นแต่ว่าฐานข้อมูลนั้นจะถูกออกแบบพิเศษให้ใช้ข้อมูลหรือโค้ดจากแหล่งข้อมูลอื่นได้ ฐานข้อมูล Access จะเก็บตารางไว้ในแฟ้มข้อมูลเดียว พร้อมกับวัตถุอื่นด้วย เช่น ฟอร์ม รายงาน แมโคร และโมดูล โดยฐานข้อมูลที่สร้างในรูปแบบ Access 2007 จะมีนามสกุลเป็น .accdb และฐานข้อมูลที่สร้างในรูปแบบของ Access รุ่นก่อนหน้าจะมีนามสกุลแฟ้มเป็น .mdb คุณสามารถใช้ Access 2007สร้างแฟ้มข้อมูลในรูปแบบแฟ้มของรุ่นก่อนหน้าได้ (ตัวอย่างเช่น Access 2000 และ Access 2002-2003)
การใช้ Access จะทำให้คุณสามารถ
- เพิ่มข้อมูลใหม่ลงในฐานข้อมูล เช่น รายการใหม่ในสินค้าคงคลัง
- แก้ไขข้อมูลที่มีอยู่ในฐานข้อมูล เช่น การเปลี่ยนตำแหน่งที่ตั้งปัจจุบันของรายการ
- ลบข้อมูล ถ้ารายการถูกขายออกหรือละทิ้งแล้ว
- จัดระเบียบและดูข้อมูลด้วยวิธีต่างๆ
- ใช้ข้อมูลร่วมกันกับผู้อื่นผ่าานทางรายงาน ข้อความอีเมล อินทราเน็ต หรืออินเทอร์เน็ต
ส่วนประกอบของฐานข้อมูล Access
ส่วนต่างๆ ต่อไปนี้เป็นการอธิบายส่วนประกอบของฐานข้อมูล Access โดยทั่วไปแบบย่อ เมื่อต้องการศึกษาเพิ่มเติมในแต่ละส่วน ให้ติดตามการเชื่อมโยงในส่วน ดูเพิ่มเติม ของบทความนี้
ตาราง
ตารางฐานข้อมูลจะมีลักษณะคล้ายกับกระดาษคำนวณ นั่นคือข้อมูลจะถูกเก็บไว้ในแถวและคอลัมน์ ดังนั้น จึงเป็นเรื่องค่อนข้างง่ายในการนำเข้าข้อมูลจากกระดาษคำนวณไปยังตารางฐานข้อมูล โดยข้อแตกต่างที่สำคัญระหว่างการเก็บข้อมูลของคุณในกระดาษคำนวณและการเก็บในฐานข้อมูลจะอยู่ที่วิธีการจัดระเบียบข้อมูล
เมื่อต้องการความยืดหยุ่นสำหรับฐานข้อมูลให้มากที่สุด ข้อมูลต้องมีการจัดระเบียบลงในตารางเพื่อไม่ให้เกิดความซ้ำซ้อน ตัวอย่างเช่น ถ้าคุณจะเก็บข้อมูลเกี่ยวกับพนักงาน ควรป้อนข้อมูลของพนักงานแต่ละคนเข้าไปในตารางที่ใช้เก็บข้อมูลพนักงานเพียงครั้งเดียว ข้อมูลเกี่ยวกับผลิตภัณฑ์จะเก็บในตารางของผลิตภัณฑ์ และข้อมูลเกี่ยวกับที่อยู่ของสาขาจะเก็บในตารางอื่น กระบวนการนี้เรียกว่า การทำNormalization
แต่ละแถวในตารางจะถูกอ้างอิงเป็นหนึ่งระเบียน ระเบียนคือที่ที่ใช้เก็บข้อมูลแต่ละส่วน แต่ละระเบียนจะประกอบด้วยเขตข้อมูลอย่างน้อยหนึ่งเขตข้อมูล เขตข้อมูลจะสอดคล้องกับคอลัมน์ในตาราง ตัวอย่างเช่น คุณอาจมีตารางหนึ่งที่ชื่อ "พนักงาน" ซึ่งแต่ละระเบียน (แถว) จะมีข้อมูลต่างๆ เกี่ยวกับพนักงานหนึ่งคน และแต่ละเขตข้อมูล (คอลัมน์) จะมีชนิดข้อมูลที่ต่างกัน เช่น ชื่อ นามสกุล ที่อยู่ และอื่นๆ เขตข้อมูลนั้นต้องได้รับการออกแบบให้มีชนิดข้อมูลที่แน่นอน ไม่ว่าจะเป็นข้อความ วันที่หรือเวลา ตัวเลข หรือชนิดข้อมูลอื่นๆ
อีกวิธีหนึ่งที่จะอธิบายให้เห็นภาพของระเบียนและเขตข้อมูลก็คือให้นึกถึงชุดบัตรข้อมูลรุ่นเก่าของห้องสมุด โดยบัตรข้อมูลแต่ละใบที่อยู่ในตู้บัตรรายการจะเทียบเท่ากับระเบียนในฐานข้อมูล ส่วนข้อมูลแต่ละส่วนบนบัตรแต่ละใบ (ชื่อผู้แต่ง ชื่อเรื่อง และอื่นๆ) จะเทียบเท่ากับเขตข้อมูลในฐานข้อมูล
ฟอร์ม
ในบางครั้งฟอร์มจะถูกอ้างอิงเป็น "หน้าจอสำหรับป้อนข้อมูล" ซึ่งเป็นส่วนติดต่อที่คุณใช้ทำงานกับข้อมูลของคุณ และฟอร์มมักมีปุ่มคำสั่งที่ใช้ดำเนินการคำสั่งได้หลากหลาย คุณสามารถสร้างฐานข้อมูลโดยไม่ต้องใช้ฟอร์มด้วยการแก้ไขข้อมูลของคุณอย่างง่ายๆ ในแผ่นข้อมูลตาราง อย่างไรก็ตาม ผู้ใช้ฐานข้อมูลส่วนใหญ่ต้องการที่จะใช้ฟอร์มเพื่อดู ป้อนข้อมูล และแก้ไขข้อมูลในตารางมากกว่า
ฟอร์มจะให้รูปแบบที่ง่ายต่อการใช้สำหรับทำงานกับข้อมูล และคุณสามารถเพิ่มองค์ประกอบการใช้งาน เช่น ปุ่มคำสั่ง ลงในฟอร์มได้ด้วย คุณอาจเขียนโปรแกรมให้กับปุ่มต่างๆ เพื่อใช้กำหนดว่าจะให้ข้อมูลใดบ้างปรากฏบนฟอร์ม เปิดฟอร์มหรือรายงานอื่นๆ หรือดำเนินงานอื่นหลากหลายประเภท ตัวอย่างเช่น คุณอาจมีฟอร์มชื่อ "ฟอร์มลูกค้า" ที่คุณใช้ทำงานกับข้อมูลลูกค้า ฟอร์มลูกค้าอาจมีปุ่มที่ใช้เปิดฟอร์มใบสั่งซื้อที่คุณสามารถป้อนรายการสั่งซื้อใหม่สำหรับลูกค้ารายนั้นได้
นอกจากนี้ ฟอร์มยังอนุญาตให้คุณสามารถควบคุมวิธีที่ผู้ใช้รายอื่นจะโต้ตอบกับข้อมูลในฐานข้อมูลด้วย ตัวอย่างเช่น คุณสามารถสร้างฟอร์มที่แสดงเฉพาะบางเขตข้อมูลและอนุญาตให้มีการดำเนินการได้เพียงบางอย่างเท่านั้น สิ่งนี้จะช่วยป้องกันข้อมูลและทำให้แน่ใจได้ว่าข้อมูลจะถูกป้อนอย่างถูกต้อง
รายงาน
รายงานเป็นสิ่งที่คุณใช้เพื่อสรุปและนำเสนอข้อมูลในตาราง บ่อยครั้งที่รายงานจะตอบคำถามตามที่ระบุไว้ เช่น "เรารับเงินจากลูกค้าแต่ละรายเป็นจำนวนเท่าไรในปีนี้" หรือ "ลูกค้าของเราอยู่ที่เมืองใดบ้าง" แต่ละรายงานสามารถกำหนดรูปแบบให้นำเสนอข้อมูลในรูปแบบที่อ่านง่ายที่สุดได้
รายงานสามารถถูกเรียกใช้เวลาใดก็ได้ และจะแสดงข้อมูลปัจจุบันในฐานข้อมูลเสมอ โดยทั่วไปรายงานจะถูกจัดรูปแบบให้สามารถพิมพ์ออกมาได้ แต่คุณก็ยังสามารถดูรายงานบนหน้าจอ ส่งออกไปยังโปรแกรมอื่น หรือส่งเป็นข้อความอีเมลได้เช่นกัน
แบบสอบถาม
แบบสอบถามเป็นส่วนสำคัญในฐานข้อมูลและสามารถดำเนินการฟังก์ชันที่ต่างกันได้จำนวนมาก ฟังก์ชันทั่วไปส่วนใหญ่ของแบบสอบถามคือการดึงข้อมูลที่ระบุจากตารางต่างๆ ออกมา โดยข้อมูลที่คุณต้องการดูอาจจะกระจายอยู่ในหลายๆ ตารางก็ได้ และแบบสอบถามจะทำให้คุณสามารถดูข้อมูลที่ต้องการได้ในรูปของแผ่นข้อมูลเดียว นอกจากนี้ ถ้าคุณไม่ต้องการดูระเบียนทั้งหมดพร้อมกัน แบบสอบถามจะให้คุณเพิ่มเงื่อนไขเพื่อ "กรอง" ข้อมูลเอาเฉพาะระเบียนที่คุณต้องการออกมา บ่อยครั้งที่แบบสอบถามทำหน้าที่เป็นแหล่งระเบียนสำหรับฟอร์มและรายงานต่างๆ
แบบสอบถามบางชุด "สามารถปรับปรุงได้" นั่นหมายความว่า คุณสามารถแก้ไขข้อมูลในตารางต้นแบบผ่านแผ่นข้อมูลแบบสอบถามได้ ถ้าคุณทำงานในแบบสอบถามที่สามารถปรับปรุงได้ โปรดจำไว้ว่าการเปลี่ยนแปลงของคุณจะมีผลกับตารางต่างๆ ด้วย ไม่ใช่เฉพาะในแผ่นข้อมูลแบบสอบถามเท่านั้น
แบบสอบถามมีรูปแบบพื้นฐานสองรูปแบบ ได้แก่ แบบสอบถามแบบใช้เลือกข้อมูลและแบบสอบถามแอคชัน แบบสอบถามแบบใช้เลือกข้อมูลจะเรียกใช้ข้อมูลและทำให้ข้อมูลพร้อมใช้งานได้อย่างง่ายดาย คุณสามารถดูผลลัพธ์ของแบบสอบถามบนหน้าจอ พิมพ์แบบสอบถาม หรือคัดลอกไปยังคลิปบอร์ด หรือคุณสามารถใช้ผลลัพธ์ของแบบสอบถามเป็นแหล่งระเบียนสำหรับฟอร์มหรือรายงานได้
แบบสอบถามแอคชัน (เหมือนกับชื่อ) จะดำเนินงานกับข้อมูล โดยแบบสอบถามแอคชันสามารถใช้สร้างตารางใหม่ เพิ่มข้อมูลลงในตารางที่มีอยู่ ปรับปรุงข้อมูล หรือลบข้อมูลได้
แมโคร
แมโครใน Access นั้นจะเหมือนกับภาษาที่ใช้ในการเขียนโปรแกรมอย่างง่ายที่คุณสามารถใช้เพื่อเพิ่มหน้าที่การใช้งานให้กับฐานข้อมูลของคุณ ตัวอย่างเช่น คุณสามารถแนบแมโครลงในปุ่มคำสั่งบนฟอร์ม เพื่อให้แมโครนั้นทำงานเมื่อใดก็ตามที่มีการกดปุ่ม แมโครจะมีแอคชันที่ใช้ดำเนินงานหลายอย่าง เช่น การเปิดรายงาน การเรียกใช้แบบสอบถาม หรือการปิดฐานข้อมูล โดยการดำเนินการกับฐานข้อมูลส่วนใหญ่ที่คุณทำด้วยตนเองนั้นสามารถทำได้อัตโนมัติโดยใช้แมโคร ดังนั้นแมโครจึงเป็นเครื่องมือที่ช่วยประหยัดเวลาที่อย่างมาก
โมดูล
โมดูล (คล้ายแมโคร) เป็นวัตถุที่คุณสามารถใช้เพื่อเพิ่มหน้าที่การใช้งานให้กับฐานข้อมูลได้ ขณะที่คุณสร้างแมโครใน Access ด้วยการเลือกจากรายการแอคชันของแมโคร แต่คุณจะสามารถเขียนโมดูลได้ในภาษาการเขียนโปรแกรม Visual Basic for Applications (VBA)โมดูลเป็นคอลเลกชันของการประกาศ คำสั่ง และกระบวนงานที่ถูกเก็บไว้ด้วยกันเป็นหน่วยเดียว โมดูลสามารถเป็นได้ทั้งคลาสโมดูลหรือโมดูลมาตรฐาน คลาสโมดูลจะถูกแนบไว้ในฟอร์มหรือรายงาน และมักจะประกอบด้วยกระบวนงานที่เฉพาะเจาะจงไปยังฟอร์มหรือรายงานที่คลาสโมดูลแนบอยู่ ส่วนโมดูลมาตรฐานจะประกอบด้วยกระบวนงานทั่วไปที่ไม่สัมพันธ์กับวัตถุอื่นใด โมดูลมาตรฐานจะถูกแสดงอยู่ภายใต้โมดูล ในบานหน้าต่างนำทาง ขณะที่คลาสโมดูลจะไม่ถูกแสดงไว้
ระบบฐานข้อมูล
กรณีศึกษาระบบฐานข้อมูลการสั่งซื้อสินค้า
เพื่อให้เกิดความเข้าใจถึงการออกแบบฐานข้อมูลในระดับแนวคิดได้ชัดเจนยิ่งขึ้น ขอเสนอตัวอย่างระบบฐานข้อมูลการสั่งซื้อสินค้ามาประกอบอีกหนึ่งตัวอย่าง ดังนี้
1. รายละเอียดและลักษณะหน้าที่ของระบบงาน
บริษัท ธนิสรการค้า จำกัด เป็นบริษัทที่ทำการจำหน่ายสินค้าหลายชนิดให้แก่ลูกค้าโดยผ่านพนักงานขาย โดยพนักงานขายหนึ่งคนจะทำการติดต่อกับลูกค้ามากกว่าหนึ่งราย และลูกค้าหนึ่งรายจะติดต่อกับพนักงานขายเพียงหนึ่งคนเท่านั้น ดังนั้น พนักงานขายหนึ่งคนจึงรับใบสั่งซื้อสินค้ามาจากลูกค้าได้หลายใบ ซึ่งลูกค้าหนึ่งคนอาจวางใบสั่งซื้อสินค้าได้หลายใบ ซึ่งใบสั่งซื้อสินค้าหนึ่งใบจะเป็นของลูกค้าเพียงคนเดียว เท่านั้น โดยใบสั่งซื้อสินค้าหนึ่งใบอาจมีการสั่งซื้อสินค้าได้หลายรายการ และสินค้าหนึ่งรายการอาจมีการระบุในใบสั่งซื้อสินค้าได้หลายใบ
ในการจัดส่งสินค้าให้แก่ลูกค้า บริษัท ธนิสรการค้า จำกัด จะจัดส่งสินค้าให้แก่ลูกค้าครบทุกรายการตามที่ระบุมาในใบสั่งซื้อสินค้า และจะนำใบสั่งซื้อสินค้าหนึ่งใบมาจัดทำใบส่งสินค้ากำกับไปด้วยหนึ่งใบ ดังนั้น ลูกค้าหนึ่งคนอาจได้รับใบส่งสินค้ามากกว่าหนึ่งใบ
บริษัทจะทำการตรวจสอบจำนวนสินค้าแต่ละรายการที่จัดเก็บไว้ในคลังสินค้ากับจำนวนสินค้า ณ จุดสั่งซื้อ หากจำนวนสินค้ารายการใดต่ำกว่าจำนวนสินค้า ณ จุดสั่งซื้อ บริษัทฯ จะทำการติดต่อเพื่อจัดซื้อจากบริษัทผู้ผลิตให้ทำการนำส่งสินค้ามาให้ ดังนั้น บริษัทผู้ผลิตหนึ่งรายอาจจัดส่งสินค้าให้แก่ บริษัท ธนิสรการค้า จำกัด ได้หลายรายการ ซึ่งสินค้าหนึ่งรายการจะมาจากบริษัทผู้ผลิตเพียงแห่งเดียว
ทั้งนี้ ในการดำเนินงาน บริษัท ธนิสรการค้า จำกัด ต้องการรายงานในเรื่องต่าง ๆ ได้แก่ รายงานการสั่งซื้อสินค้าจากบริษัทอื่น รายงานการจำหน่ายสินค้า และรายงานสินค้าคงเหลือในคลัง
2. การกำหนดเอนทิตีและความสัมพันธ์ระหว่างเอนทิตี
จากรายละเอียดข้างต้น เมื่อทำการวิเคราะห์เพื่อหาเอนทิตีที่เกี่ยวข้องจะพบว่า มี 6 เอนทิตีคือ
- เอนทิตีพนักงานขาย เป็นเอนทิตีที่แสดงรายละเอียดของพนักงานขายแต่ละคน
- เอนทิตีลูกค้า เป็นเอนทิตีที่แสดงรายละเอียดของลูกค้าแต่ละราย
- เอนทิตีใบสั่งซื้อสินค้า เป็นเอนทิตีที่แสดงรายละเอียดของใบสั่งซื้อสินค้าแต่ละใบ
- เอนทิตีสินค้า เป็นเอนทิตีที่แสดงรายละเอียดของสินค้าในบริษัท ธนิสรการค้า จำกัด
- เอนทิตีใบส่งสินค้า เป็นเอนทิตีที่แสดงรายละเอียดของใบส่งสินค้าแต่ละใบ
- เอนทิตีผู้ผลิต เป็นเอนทิตีที่แสดงรายละเอียดของบริษัทผู้ผลิตที่ทำการนำส่งสินค้าให้แก่บริษัท ธนิสรการค้า จำกัด
เมื่อทำการวิเคราะห์ความสัมพันธ์ระหว่างเอนทิตีจะพบว่า มี 6 ความสัมพันธ์ คือ
- ความสัมพันธ์ติดต่อ เป็นความสัมพันธ์แบบหนึ่งต่อกลุ่มระหว่างเอนทิตีพนักงานขายและเอนทิตีลูกค้า เนื่องจากพนักงานขายหนึ่งคนอาจติดต่อกับลูกค้าได้มากกว่าหนึ่งราย โดยลูกค้าหนึ่งรายจะติดต่อกับพนักงานขายเพียงหนึ่งคนเท่านั้น
- ความสัมพันธ์การรับ เป็นความสัมพันธ์แบบหนึ่งต่อกลุ่มระหว่างเอนทิตีพนักงานขายและ เอนทิตีใบสั่งซื้อสินค้า เนื่องจากพนักงานขายหนึ่งคนอาจรับใบสั่งซื้อสินค้าได้หลายใบ และใบสั่งซื้อสินค้า หนึ่งใบจะมาจากพนักงานขายหนึ่งคนเท่านั้น
- ความสัมพันธ์การวางใบสั่ง เป็นความสัมพันธ์แบบหนึ่งต่อกลุ่มระหว่างเอนทิตีลูกค้าและเอนทิตีใบสั่งซื้อสินค้า เนื่องจากลูกค้าหนึ่งรายอาจส่งใบสั่งซื้อสินค้าได้หลายใบ และใบสั่งซื้อสินค้าหนึ่งใบจะมาจากลูกค้าหนึ่งคนเท่านั้น
- ความสัมพันธ์การระบุรายการ เป็นความสัมพันธ์แบบกลุ่มต่อกลุ่มระหว่างเอนทิตีใบสั่งซื้อสินค้าและเอนทิตีสินค้า เนื่องจากใบสั่งซื้อสินค้าหนึ่งใบอาจระบุสินค้าได้หลายรายการ และสินค้าหนึ่งรายการอาจมีการระบุมาในใบสั่งซื้อสินค้าได้หลายใบ
- ความสัมพันธ์การจัดทำ เป็นความสัมพันธ์แบบหนึ่งต่อหนึ่งระหว่างเอนทิตีใบสั่งซื้อสินค้าและ ใบส่งสินค้า เนื่องจากใบสั่งซื้อสินค้าหนึ่งใบจะนำมาจัดทำใบส่งสินค้าหนึ่งใบ และใบจัดส่งสินค้าหนึ่งใบจะมาจากใบสั่งซื้อสินค้าหนึ่งใบเท่านั้น
- ความสัมพันธ์การนำส่ง เป็นความสัมพันธ์แบบหนึ่งต่อกลุ่มระหว่างเอนทิตีผู้ผลิตและเอนทิตี สินค้า เนื่องจากบริษัทผู้ผลิตหนึ่งรายอาจนำส่งสินค้าให้ บริษัท ธนิสรการค้า จำกัด ได้หลายรายการ และ สินค้าหนึ่งรายการจะมาจากบริษัทผู้ผลิตหนึ่งรายเท่านั้น
3. การแปลงเอนทิตีและความสัมพันธ์ระหว่างเอนทิตีให้เป็นรีเลชัน
จากเอนทิตีและความสัมพันธ์ระหว่างเอนทิตีที่ทำการวิเคราะห์ได้ในข้อ 2 พบว่า
ความสัมพันธ์การระบุรายการซึ่งเป็นระหว่างความสัมพันธ์ระหว่างเอนทิตีใบสั่งซื้อสินค้าและเอนทิตีสินค้าเป็นความสัมพันธ์แบบกลุ่มต่อกลุ่ม ดังนั้น จึงต้องทำการแปลงความสัมพันธ์ดังกล่าวเป็นความสัมพันธ์ระหว่างเอนทิตีแบบหนึ่งต่อกลุ่มโดยการสร้าง Composite Entity การระบุรายการขี้นหนึ่งเอนทิตี
ดังนั้น ระบบฐานข้อมูลการสั่งซื้อสินค้าจะประกอบด้วย 7 รีเลชัน คือ รีเลชันพนักงานขาย รีเลชัน ลูกค้า รีเลชันใบสั่งซื้อสินค้า รีเลชันสินค้า รีเลชันใบส่งสินค้า รีเลชันผู้ผลิต และรีเลชันการระบุรายการ โดยมีความสัมพันธ์ระหว่างรีเลชัน 7 ความสัมพันธ์ คือ
- ความสัมพันธ์แบบหนึ่งต่อกลุ่มระหว่างรีเลชันพนักงานขายและรีเลชันลูกค้า
- ความสัมพันธ์แบบหนึ่งต่อกลุ่มระหว่างรีเลชันพนักงานขายและรีเลชันใบสั่งซื้อสินค้า
- ความสัมพันธ์แบบหนึ่งต่อกลุ่มระหว่างรีเลชันลูกค้าและรีเลชันใบสั่งซื้อสินค้า
- ความสัมพันธ์แบบหนึ่งต่อกลุ่มระหว่างรีเลชันใบสั่งซื้อสินค้าและรีเลชันการระบุรายการ
- ความสัมพันธ์แบบหนึ่งต่อกลุ่มระหว่างรีเลชันสินค้าและรีเลชันการระบุรายการ
- ความสัมพันธ์แบบหนึ่งต่อหนึ่งระหว่างรีเลชันใบสั่งซื้อสินค้าและรีเลชันใบส่งสินค้า
- ความสัมพันธ์แบบหนึ่งต่อกลุ่มระหว่างรีเลชันผู้ผลิตและรีเลชันสินค้า
4. การกำหนดแอททริบิวต์ต่าง ๆ คีย์หลัก และคีย์นอกในแต่ละรีเลชัน
ดังนั้น โครงร่างฐานข้อมูลเชิงสัมพันธ์ของระบบฐานข้อมูลนักศึกษาที่กล่าวมาข้างต้น ในแต่ละรีเลชันจะประกอบด้วยแอททริบิวต์ คีย์หลัก และคีย์นอก ดังนี้คือ
- รีเลชันพนักงานขาย ประกอบด้วยแอททริบิวต์ รหัสพนักงาน ชื่อพนักงาน ที่อยู่ โทรศัพท์ โดยมีแอททริบิวต์รหัสพนักงานเป็นคีย์หลัก
รหัสพนักงาน
|
ชื่อพนักงาน
|
ที่อยู่
|
โทรศัพท์
|
- รีเลชันลูกค้า ประกอบด้วยแอททริบิวต์ รหัสลูกค้า ชื่อลูกค้า ที่อยู่ โทรศัพท์ โดยมีแอททริบิวต์รหัสลูกค้าเป็นคีย์หลัก และเนื่องจากรีเลชันพนักงานขายมีความสัมพันธ์แบบหนึ่งต่อกลุ่มกับรีเลชันลูกค้า รีเลชันลูกค้าจึงต้องมีแอททริบิวต์รหัสพนักงานเพิ่มขึ้นด้วย โดยแอททริบิวต์รหัสพนักงานเป็นคีย์นอกที่ใช้ในการเชื่อมโยงข้อมูลกับรีเลชันพนักงานขาย
รหัสลูกค้า
|
ชื่อลูกค้า
|
ที่อยู่
|
โทรศัพท์
|
รหัสพนักงาน
|
- รีเลชันใบสั่งซื้อสินค้า ประกอบด้วยแอททริบิวต์ เลขที่ใบสั่งซื้อ วันที่สั่งซื้อ โดยมีแอททริบิวต์เลขที่ใบสั่งซื้อเป็นคีย์หลัก และเนื่องจากรีเลชันพนักงานขายมีความสัมพันธ์แบบหนึ่งต่อกลุ่มกับรีเลชันใบสั่งซื้อสินค้า รีเลชันใบสั่งซื้อสินค้าจึงต้องมีแอททริบิวต์รหัสพนักงานเพิ่มขึ้นด้วย โดยแอททริบิวต์รหัสพนักงานเป็นคีย์นอกที่ใช้ในการเชื่อมโยงข้อมูลกับรีเลชันพนักงานขาย
เนื่องจากรีเลชันลูกค้ามีความสัมพันธ์แบบหนึ่งต่อกลุ่มกับรีเลชันใบสั่งซื้อสินค้าปรากฏอยู่อีกหนึ่งความสัมพันธ์ ฉะนั้น รีเลชันใบสั่งซื้อสินค้าจึงต้องมีแอททริบิวต์รหัสลูกค้าเพิ่มขึ้นอีกหนึ่งแอททริบิวต์ โดย แอททริบิวต์รหัสลูกค้าเป็นคีย์นอกที่ใช้ในการเชื่อมโยงข้อมูลกับรีเลชันลูกค้า
เลขที่ใบสั่งซื้อ
|
วันที่สั่งซื้อ
|
รหัสพนักงาน
|
รหัสลูกค้า
|
- รีเลชันผู้ผลิต ประกอบด้วยแอททริบิวต์ รหัสผู้ผลิต ชื่อผู้ผลิต ที่อยู่ โทรศัพท์ ราคาขายส่งต่อหน่วย (ราคาทุนต่อหน่วยของ บริษัท ธนิสรการค้า จำกัด) โดยมีแอททริบิวต์รหัสผู้ผลิตเป็นคีย์หลัก
รหัสผู้ผลิต
|
ชื่อผู้ผลิต
|
ที่อยู่
|
โทรศัพท์
|
ราคาขายส่งต่อหน่วย
|
- รีเลชันสินค้า ประกอบด้วยแอททริบิวต์ รหัสสินค้า ชื่อสินค้า สถานที่เก็บ จำนวนในคลัง ราคาขายต่อหน่วย จุดสั่งซื้อ โดยมีแอททริบิวต์รหัสสินค้าเป็นคีย์หลัก และเนื่องจากรีเลชันผู้ผลิตมีความสัมพันธ์แบบหนึ่งต่อกลุ่มกับรีเลชันสินค้าปรากฏอยู่อีกหนึ่งความสัมพันธ์ ฉะนั้น รีเลชันสินค้าจึงต้องมีแอททริบิวต์รหัสผู้ผลิตเพิ่มขึ้นอีกหนึ่งแอททริบิวต์ โดยแอททริบิวต์รหัสผู้ผลิตเป็นคีย์นอกที่ใช้ในการเชื่อมโยงข้อมูลกับรีเลชันผู้ผลิต
รหัสสินค้า
|
ชื่อสินค้า
|
สถานที่เก็บ
|
จำนวน
ในคลัง
|
ราคาขาย
ต่อหน่วย
|
จุดสั่งซื้อ
|
รหัสผู้ผลิต
|
- รีเลชันใบส่งสินค้า ประกอบด้วยแอททริบิวต์ เลขที่ใบส่งสินค้า วันที่ส่งสินค้า โดยมีแอททริบิวต์เลขที่ใบส่งสินค้าเป็นคีย์หลัก และเนื่องจากรีเลชันใบสั่งซื้อสินค้ามีความสัมพันธ์แบบหนึ่งต่อหนึ่งกับรีเลชัน ใบส่งสินค้า รีเลชันใบส่งสินค้าจึงต้องมีแอททริบิวต์เลขที่ใบสั่งซื้อเพิ่มขึ้นด้วย โดยแอททริบิวต์เลขที่ใบสั่งซื้อเป็นคีย์นอกที่ใช้ในการเชื่อมโยงข้อมูลกับรีเลชันใบสั่งซื้อสินค้า
เลขที่ใบส่งสินค้า
|
วันที่ส่งสินค้า
|
เลขที่ใบสั่งซื้อ
|
- รีเลชันการระบุรายการ ประกอบด้วยแอททริบิวต์ เลขที่ใบสั่งซื้อ รหัสสินค้า จำนวนที่สั่งซื้อ โดยมีแอททริบิวต์เลขที่ใบสั่งซื้อและรหัสสินค้าประกอบกันเป็นคีย์หลัก แอททริบิวต์เลขที่ใบสั่งซื้อเป็นคีย์นอกที่ใช้ในการเชื่อมโยงข้อมูลกับรีเลชันใบสั่งซื้อสินค้า และแอททริบิวต์รหัสสินค้าเป็นคีย์นอกที่ใช้ในการเชื่อมโยง ข้อมูลกับรีเลชันสินค้า
เลขที่ใบสั่งซื้อ
|
รหัสสินค้า
|
จำนวนที่สั่งซื้อ
|
5. การทำให้รีเลชันมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐาน
โดยทั่วไปการทำให้แต่ละรีเลชันมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานนั้นมักจะทำจนถึงรูปแบบที่เป็นบรรทัดฐานขั้นที่ 3 แต่อาจมีในบางกรณีที่ผู้ออกแบบฐานข้อมูลจำเป็นต้องดำเนินการให้รีเลชันนั้นมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานของบอยส์และคอดด์ หรือรูปแบบที่เป็นบรรทัดฐานขั้นที่ 4 และ 5
ดังนั้น เพื่อขจัดปัญหาความซ้ำซ้อนของข้อมูลที่อาจเกิดขึ้นในแต่ละรีเลชันจึงต้องจัดทำรีเลชันให้เป็นรูปแบบที่เป็นบรรทัดฐาน โดยลำดับแรก คือ การตรวจสอบว่า รีเลชันมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานใดก่อนที่จะทำให้เป็นรูปแบบที่เป็นบรรทัดฐานในขั้นต่อไป
- รีเลชันพนักงานขาย ประกอบด้วยแอททริบิวต์ รหัสพนักงาน ชื่อพนักงาน ที่อยู่ โทรศัพท์ โดยมีแอททริบิวต์รหัสพนักงานเป็นคีย์หลัก
รหัสพนักงาน
|
ชื่อพนักงาน
|
ที่อยู่
|
โทรศัพท์
|
จากการตรวจสอบพบว่า รีเลชันพนักงานขายมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 5 แล้ว เนื่องจาก
รีเลชันพนักงานขายมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 1 แล้ว เนื่องจากทุกแอททริบิวต์ในแต่ละทูเพิลมีค่าของข้อมูลเพียงค่าเดียว
รีเลชันพนักงานขายมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 2 แล้ว เนื่องจากไม่มีความสัมพันธ์ระหว่างแอททริบิวต์แบบบางส่วนเกิดขึ้น
รีเลชันพนักงานขายมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 3 แล้ว เนื่องจากไม่มีความสัมพันธ์ระหว่างแอททริบิวต์แบบ Transitive เกิดขึ้น
รีเลชันพนักงานขายมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานของบอยส์และคอดด์แล้ว เนื่องจากไม่มีแอททริบิวต์ใดในรีเลชันที่สามารถระบุค่าของแอททริบิวต์ที่เป็นคีย์หลัก หรือส่วนใดส่วนหนึ่งของแอททริบิวต์ที่ประกอบกันเป็นคีย์หลักได้
รีเลชันพนักงานขายมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 4 แล้ว เนื่องจากไม่มีความสัมพันธ์ระหว่างแอททริบิวต์แบบหลายค่า
รีเลชันพนักงานขายมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 5 แล้ว เนื่องจากมีความสัมพันธ์ระหว่างแอททริบิวต์แบบ Join
- รีเลชันลูกค้า ประกอบด้วยแอททริบิวต์ รหัสลูกค้า ชื่อลูกค้า ที่อยู่ โทรศัพท์ โดยมีแอททริบิวต์รหัสลูกค้าเป็นคีย์หลัก แอททริบิวต์รหัสพนักงานเป็นคีย์นอกที่ใช้ในการเชื่อมโยงข้อมูลกับรีเลชันพนักงานขาย
รหัสลูกค้า
|
ชื่อลูกค้า
|
ที่อยู่
|
โทรศัพท์
|
รหัสพนักงาน
|
จากการตรวจสอบพบว่า รีเลชันลูกค้ามีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 5 แล้ว เนื่องจาก
รีเลชันลูกค้ามีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 1 แล้ว เนื่องจากทุกแอททริบิวต์ในแต่ละทูเพิลมีค่าของข้อมูลเพียงค่าเดียว
รีเลชันลูกค้ามีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 2 แล้ว เนื่องจากไม่มีความสัมพันธ์ระหว่างแอททริบิวต์แบบบางส่วนเกิดขึ้น
รีเลชันลูกค้ามีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 3 แล้ว เนื่องจากไม่มีความสัมพันธ์ระหว่างแอททริบิวต์แบบ Transitive เกิดขึ้น
รีเลชันลูกค้ามีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานของบอยส์และคอดด์แล้ว เนื่องจากไม่มี แอททริบิวต์ใดในรีเลชันที่สามารถระบุค่าของแอททริบิวต์ที่เป็นคีย์หลัก หรือส่วนใดส่วนหนึ่งของแอททริบิวต์ที่ประกอบกันเป็นคีย์หลักได้
รีเลชันลูกค้ามีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 4 แล้ว เนื่องจากไม่มีความสัมพันธ์ระหว่างแอททริบิวต์แบบหลายค่า
รีเลชันลูกค้ามีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 5 แล้ว เนื่องจากมีความสัมพันธ์ระหว่างแอททริบิวต์แบบ Join
- รีเลชันใบสั่งซื้อสินค้า ประกอบด้วยแอททริบิวต์ เลขที่ใบสั่งซื้อ วันที่สั่งซื้อ โดยมีแอททริบิวต์เลขที่ใบสั่งซื้อเป็นคีย์หลัก แอททริบิวต์รหัสพนักงานเป็นคีย์นอกที่ใช้ในการเชื่อมโยงข้อมูลกับรีเลชันพนักงานขาย และแอททริบิวต์รหัสลูกค้าเป็นคีย์นอกที่ใช้ในการเชื่อมโยงข้อมูลกับรีเลชันลูกค้า
เลขที่ใบสั่งซื้อ
|
วันที่สั่งซื้อ
|
รหัสพนักงาน
|
รหัสลูกค้า
|
จากการตรวจสอบพบว่า รีเลชันใบสั่งซื้อสินค้ามีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 5 แล้ว เนื่องจาก
รีเลชันใบสั่งซื้อสินค้ามีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 1 แล้ว เนื่องจากทุกแอททริบิวต์ในแต่ละทูเพิลมีค่าของข้อมูลเพียงค่าเดียว
รีเลชันใบสั่งซื้อสินค้ามีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 2 แล้ว เนื่องจากไม่มีความสัมพันธ์ระหว่างแอททริบิวต์แบบบางส่วนเกิดขึ้น
รีเลชันใบสั่งซื้อสินค้ามีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 3 แล้ว เนื่องจากไม่มีความสัมพันธ์ระหว่างแอททริบิวต์แบบ Transitive เกิดขึ้น
รีเลชันใบสั่งซื้อสินค้ามีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานของบอยส์และคอดด์แล้ว เนื่องจากไม่มีแอททริบิวต์ใดในรีเลชันที่สามารถระบุค่าของแอททริบิวต์ที่เป็นคีย์หลัก หรือส่วนใดส่วนหนึ่งของแอททริบิวต์ที่ประกอบกันเป็นคีย์หลักได้
รีเลชันใบสั่งซื้อสินค้ามีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 4 แล้ว เนื่องจากไม่มีความสัมพันธ์ระหว่างแอททริบิวต์แบบหลายค่า
รีเลชันใบสั่งซื้อสินค้ามีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 5 แล้ว เนื่องจากมีความสัมพันธ์ระหว่างแอททริบิวต์แบบ Join
- รีเลชันผู้ผลิต ประกอบด้วยแอททริบิวต์ รหัสผู้ผลิต ชื่อผู้ผลิต ที่อยู่ โทรศัพท์ ราคาขายส่งต่อหน่วย (ราคาทุนต่อหน่วยของ บริษัท ธนิสรการค้า จำกัด) โดยมีแอททริบิวต์รหัสผู้ผลิตเป็นคีย์หลัก
รหัสผู้ผลิต
|
ชื่อผู้ผลิต
|
ที่อยู่
|
โทรศัพท์
|
ราคาขายส่งต่อหน่วย
|
จากการตรวจสอบพบว่า รีเลชันการลงทะเบียนมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 5 แล้ว เนื่องจาก
รีเลชันผู้ผลิตมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 1 แล้ว เนื่องจากทุกแอททริบิวต์ในแต่ละทูเพิลมีค่าของข้อมูลเพียงค่าเดียว
รีเลชันผู้ผลิตมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 2 แล้ว เนื่องจากไม่มีความสัมพันธ์ระหว่างแอททริบิวต์แบบบางส่วนเกิดขึ้น
รีเลชันผู้ผลิตมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 3 แล้ว เนื่องจากไม่มีความสัมพันธ์ระหว่างแอททริบิวต์แบบ Transitive เกิดขึ้น
รีเลชันผู้ผลิตมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานของบอยส์และคอดด์แล้ว เนื่องจากไม่มี แอททริบิวต์ใดในรีเลชันที่สามารถระบุค่าของแอททริบิวต์ที่เป็นคีย์หลัก หรือส่วนใดส่วนหนึ่งของแอททริบิวต์ที่ประกอบกันเป็นคีย์หลักได้
รีเลชันผู้ผลิตมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 4 แล้ว เนื่องจากไม่มีความสัมพันธ์ระหว่างแอททริบิวต์แบบหลายค่า
รีเลชันผู้ผลิตมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 5 แล้ว เนื่องจากมีความสัมพันธ์ระหว่างแอททริบิวต์แบบ Join
- รีเลชันสินค้า ประกอบด้วยแอททริบิวต์ รหัสสินค้า ชื่อสินค้า สถานที่เก็บ จำนวนในคลัง ราคาขายต่อหน่วย จุดสั่งซื้อ โดยมีแอททริบิวต์รหัสสินค้าเป็นคีย์หลัก และเนื่องจากรีเลชันผู้ผลิตมีความสัมพันธ์แบบหนึ่งต่อกลุ่มกับรีเลชันสินค้าปรากฏอยู่อีกหนึ่งความสัมพันธ์ ฉะนั้น รีเลชันสินค้าจึงต้องมีแอททริบิวต์รหัสผู้ผลิตเพิ่มขึ้นอีกหนึ่งแอททริบิวต์ โดยแอททริบิวต์รหัสผู้ผลิตเป็นคีย์นอกที่ใช้ในการเชื่อมโยงข้อมูลกับรีเลชันผู้ผลิต
รหัสสินค้า
|
ชื่อสินค้า
|
สถานที่เก็บ
|
จำนวน
ในคลัง
|
ราคาขาย
ต่อหน่วย
|
จุดสั่งซื้อ
|
รหัสผู้ผลิต
|
จากการตรวจสอบพบว่า รีเลชันสินค้ามีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 5 แล้ว เนื่องจาก
รีเลชันสินค้ามีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 1 แล้ว เนื่องจากทุกแอททริบิวต์ในแต่ละทูเพิลมีค่าของข้อมูลเพียงค่าเดียว
รีเลชันสินค้ามีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 2 แล้ว เนื่องจากไม่มีความสัมพันธ์ระหว่างแอททริบิวต์แบบบางส่วนเกิดขึ้น
รีเลชันสินค้ามีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 3 แล้ว เนื่องจากไม่มีความสัมพันธ์ระหว่างแอททริบิวต์แบบ Transitive เกิดขึ้น
รีเลชันสินค้ามีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานของบอยส์และคอดด์แล้ว เนื่องจากไม่มี แอททริบิวต์ใดในรีเลชันที่สามารถระบุค่าของแอททริบิวต์ที่เป็นคีย์หลัก หรือส่วนใดส่วนหนึ่งของแอททริบิวต์ที่ประกอบกันเป็นคีย์หลักได้
รีเลชันสินค้ามีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 4 แล้ว เนื่องจากไม่มีความสัมพันธ์ระหว่างแอททริบิวต์แบบหลายค่า
รีเลชันสินค้ามีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 5 แล้ว เนื่องจากมีความสัมพันธ์ระหว่างแอททริบิวต์แบบ Join
- รีเลชันใบส่งสินค้า ประกอบด้วยแอททริบิวต์ เลขที่ใบส่งสินค้า วันที่ส่งสินค้า โดยมีแอททริบิวต์เลขที่ใบส่งสินค้าเป็นคีย์หลัก และเนื่องจากรีเลชันใบสั่งซื้อสินค้ามีความสัมพันธ์แบบหนึ่งต่อหนึ่งกับรีเลชัน ใบส่งสินค้า รีเลชันใบส่งสินค้าจึงต้องมีแอททริบิวต์เลขที่ใบสั่งซื้อเพิ่มขึ้นด้วย โดยแอททริบิวต์เลขที่ใบสั่งซื้อเป็นคีย์นอกที่ใช้ในการเชื่อมโยงข้อมูลกับรีเลชันใบสั่งซื้อสินค้า
เลขที่ใบส่งสินค้า
|
วันที่ส่งสินค้า
|
เลขที่ใบสั่งซื้อ
|
จากการตรวจสอบพบว่า รีเลชันใบส่งสินค้า มีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 5 แล้ว เนื่องจาก
รีเลชันใบส่งสินค้ามีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 1 แล้ว เนื่องจากทุกแอททริบิวต์ในแต่ละทูเพิลมีค่าของข้อมูลเพียงค่าเดียว
รีเลชันใบส่งสินค้ามีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 2 แล้ว เนื่องจากไม่มีความสัมพันธ์ระหว่างแอททริบิวต์แบบบางส่วนเกิดขึ้น
รีเลชันใบส่งสินค้ามีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 3 แล้ว เนื่องจากไม่มีความสัมพันธ์ระหว่างแอททริบิวต์แบบ Transitive เกิดขึ้น
รีเลชันใบส่งสินค้ามีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานของบอยส์และคอดด์แล้ว เนื่องจากไม่มีแอททริบิวต์ใดในรีเลชันที่สามารถระบุค่าของแอททริบิวต์ที่เป็นคีย์หลัก หรือส่วนใดส่วนหนึ่งของแอททริบิวต์ที่ประกอบกันเป็นคีย์หลักได้
รีเลชันใบส่งสินค้ามีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 4 แล้ว เนื่องจากไม่มีความสัมพันธ์ระหว่างแอททริบิวต์แบบหลายค่า
รีเลชันใบส่งสินค้ามีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 5 แล้ว เนื่องจากมีความสัมพันธ์ระหว่างแอททริบิวต์แบบ Join
- รีเลชันการระบุรายการ ประกอบด้วยแอททริบิวต์ เลขที่ใบสั่งซื้อ รหัสสินค้า จำนวนที่สั่งซื้อ โดยมีแอททริบิวต์เลขที่ใบสั่งซื้อและรหัสสินค้าประกอบกันเป็นคีย์หลัก แอททริบิวต์เลขที่ใบสั่งซื้อเป็นคีย์นอกที่ใช้ในการเชื่อมโยงข้อมูลกับรีเลชันใบสั่งซื้อสินค้า และแอททริบิวต์รหัสสินค้าเป็นคีย์นอกที่ใช้ในการเชื่อมโยง ข้อมูลกับรีเลชันสินค้า
เลขที่ใบสั่งซื้อ
|
รหัสสินค้า
|
จำนวนที่สั่งซื้อ
|
จากการตรวจสอบพบว่า รีเลชันการระบุรายการมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐาน ขั้นที่ 5 แล้ว เนื่องจาก
รีเลชันการระบุรายการมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 1 แล้ว เนื่องจากทุกแอททริบิวต์ในแต่ละทูเพิลมีค่าของข้อมูลเพียงค่าเดียว
รีเลชันการระบุรายการมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 2 แล้ว เนื่องจากไม่มีความสัมพันธ์ระหว่างแอททริบิวต์แบบบางส่วนเกิดขึ้น
รีเลชันการระบุรายการมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 3 แล้ว เนื่องจากไม่มีความสัมพันธ์ระหว่างแอททริบิวต์แบบ Transitive เกิดขึ้น
รีเลชันการระบุรายการมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานของบอยส์และคอดด์แล้ว เนื่องจากไม่มีแอททริบิวต์ใดในรีเลชันที่สามารถระบุค่าของแอททริบิวต์ที่เป็นคีย์หลัก หรือส่วนใดส่วนหนึ่งของแอททริบิวต์ที่ประกอบกันเป็นคีย์หลักได้
รีเลชันการระบุรายการมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 4 แล้ว เนื่องจากไม่มีความสัมพันธ์ระหว่างแอททริบิวต์แบบหลายค่า
รีเลชันการระบุรายการมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 5 แล้ว เนื่องจากไม่มีความสัมพันธ์ระหว่างแอททริบิวต์แบบ Join
6. รวบรวมและทบทวนการออกแบบฐานข้อมูลในระดับแนวคิด
วัตถุประสงค์ในการรวบรวมและทบทวนโครงร่างจากการออกแบบฐานข้อมูลในระดับแนวคิด คือ เพื่อตรวจทานและตรวจสอบสาระสำคัญ ตลอดจนความขัดแย้ง ความซ้ำซ้อน หรือความไม่ถูกต้องที่อาจ เกิดขึ้น
ดังนั้น จากตัวอย่างการออกแบบโครงร่างฐานข้อมูลเชิงสัมพันธ์ของระบบฐานข้อมูลการสั่งซื้อสินค้าในระดับแนวคิดข้างต้นจะพบว่า โครงร่างฐานข้อมูลดังกล่าว หากดำเนินการต่อไปจนเป็นฐานข้อมูลและตารางข้อมูลน่าจะตอบสนองความต้องการในการใช้ข้อมูลในเรื่องต่าง ๆ ได้ ตัวอย่างเช่น รายงานการสั่งซื้อสินค้าจากบริษัทอื่น รายงานการจำหน่ายสินค้า และรายงานสินค้าคงเหลือในคลัง
ระบบฐานข้อมูล
ตัวอย่าง ระบบฐานข้อมูล
ระบบยืม – คืนหนังสือในห้องสมุดโรงเรียน
ข้อเสนอโครงการ
1. ชื่อโครงการ ระบบยืม – คืนหนังสือในห้องสมุดโรงเรียน
2. ผู้รับผิดชอบโครงการ
2.1 หัวหน้าโครงการ นางสาวเจษฎาภรณ์ แสงดาว รหัส 54016680120
ผู้ร่วมโครงการคนที่ 1 นางสาวอริสา แตงสุวรรณ รหัส 54016680125
3. หลักการและเหตุผล
การยืม – คืนหนังสือในห้องสมุดโรงเรียนไผ่ล้อมวิทยา หมู่ 3 ต.ไผ่ล้อม อ.ลับแล จ.อุตรดิตถ ยังเป็นการใช้วิธีการจดบันทึกลงสมุดรายการจึงทำให้การจัดการการยืม – คืนหนังสือ เกิดความผิดพลาด และสูญหาย ซึ่งอาจเกิดความเสียหายต่อทางโรงเรียน ทางกลุ่มจึงพัฒนาเป็นระบบยืม – คืนหนังสือในห้องสมุดโรงเรียนขึ้น เพื่อความเป็นระเบียบในการยืม – คืนหนังสือของนักเรียนโรงเรียนไผ่ล้อมวิทยา หมู่ 3 ต.ไผ่ล้อม อ.ลับแล จ.อุตรดิตถ์
การยืม – คืนหนังสือในห้องสมุดโรงเรียนไผ่ล้อมวิทยา หมู่ 3 ต.ไผ่ล้อม อ.ลับแล จ.อุตรดิตถ ยังเป็นการใช้วิธีการจดบันทึกลงสมุดรายการจึงทำให้การจัดการการยืม – คืนหนังสือ เกิดความผิดพลาด และสูญหาย ซึ่งอาจเกิดความเสียหายต่อทางโรงเรียน ทางกลุ่มจึงพัฒนาเป็นระบบยืม – คืนหนังสือในห้องสมุดโรงเรียนขึ้น เพื่อความเป็นระเบียบในการยืม – คืนหนังสือของนักเรียนโรงเรียนไผ่ล้อมวิทยา หมู่ 3 ต.ไผ่ล้อม อ.ลับแล จ.อุตรดิตถ์
4. วัตถุประสงค์
4.1 เพื่อสร้างฐานข้อมูลของระบบการยืม - คืนหนังสือ
4.2 เพื่อทำให้เกิดความสะดวกกับผู้ใช้และในการจัดเก็บข้อมูลการยืม – คืนหนังสือ
5. เป้าหมาย
5.1 เพื่อให้การยืม-คืนหนังสือภายในห้องสมุดโรงเรียนเป็นระบบ
5.2 เพื่อให้มีความปลอดภัยจากปัญหาหนังสือในห้องสมุดสูญหาย
5.3 เพื่อเพิ่มความสะดวกในการยืม-คืนหนังสือ
6. สถานที่ดำเนินการ
6.1 โรงเรียนไผ่ล้อมวิทยา หมู่ 3 ต.ไผ่ล้อม อ.ลับแล จ.อุตรดิตถ์ 53210
7. แผนการดำเนินงาน
8. ระยะเวลาในการดำเนินงาน
เริ่มโครงการ 5 มิถุนายน 2555
สิ้นสุดโครงการ 1 ตุลาคม 2555
รวมทั้งหมด 119 วัน
งบประมาณรวมทั้งสิ้น ……………2500…………………บาท
10. การประเมินผลโครงการ
1) ประเมินจากบันทึกการยืม-คืนหนังสือในห้องสมุด
2) ประเมินจากความสามารถของบรรณาธิการห้องสมุด
11.ผลที่คาดว่าจะได้รับจากโครงการหรือการนำผลที่ได้ไปใช้เมื่อดำเนินการเสร็จเรียบร้อยแล้ว
1) ช่วยบันทึกข้อมูลพื้นฐานของผู้ที่ขอยืมหนังสือ ให้มีความเป็นระเบียบ
2) เพื่อความสะดวกในการค้นหาสำหรับนักเรียนที่มาขอใช้บริการ
SDLR จาก Proposal อยู่ในรูป WBS Chart
2. ตาราง Task
T1. วางแผนงาน
T2. ตรวจสอบห้องสมุดโรงเรียน
T3. เสนอโครงการ
T4. ดำเนินการ
T5. ตรวจสอบโครงการ
T6. ทดสอบโปรแกรม
T7. ส่งโครงการ
T8. เสนอโปรแกรมให้โรงเรียน
3. เส้นทาง Arrow
4. ตารางความเสี่ยง
5. Gantt Chart
6. Context Diagram
7. ER-Diagram (Entity Relationship)
8. Data Flow Diagram Level 0 (DFD Level0)
9. การประเมินราคาในทางปฎิบัติ
1. ดูจากความต้องการแล้วแปลงเป็นหน้าจอที่ต้องสร้าง( A )
2. ราคาต่อหน้าจอ ( B )
ดังนั้น
ั
สูตร
ค่าพัฒนาระบบ = A X B
หน้าจอที่ต้องสร้าง = 5
ราคาต่อหน้าจอ = 8,000 บาท //*ราคากลาง*//
ค่าพัฒนาระบบ = 40,000 บาท
10. โปรแกรมระบบยืม - คืนหนังสือในห้องสมุด
หน้า Login
หน้าหลักโปรแกรม
หน้าสำหรับเพิ่มข้อมูลสมาชิก
หน้าสำหรับดูฐานข้อมูล
สมัครสมาชิก:
บทความ (Atom)