กรณีศึกษาระบบฐานข้อมูลการสั่งซื้อสินค้า
เพื่อให้เกิดความเข้าใจถึงการออกแบบฐานข้อมูลในระดับแนวคิดได้ชัดเจนยิ่งขึ้น ขอเสนอตัวอย่างระบบฐานข้อมูลการสั่งซื้อสินค้ามาประกอบอีกหนึ่งตัวอย่าง ดังนี้
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. รวบรวมและทบทวนการออกแบบฐานข้อมูลในระดับแนวคิด
วัตถุประสงค์ในการรวบรวมและทบทวนโครงร่างจากการออกแบบฐานข้อมูลในระดับแนวคิด คือ เพื่อตรวจทานและตรวจสอบสาระสำคัญ ตลอดจนความขัดแย้ง ความซ้ำซ้อน หรือความไม่ถูกต้องที่อาจ เกิดขึ้น
ดังนั้น จากตัวอย่างการออกแบบโครงร่างฐานข้อมูลเชิงสัมพันธ์ของระบบฐานข้อมูลการสั่งซื้อสินค้าในระดับแนวคิดข้างต้นจะพบว่า โครงร่างฐานข้อมูลดังกล่าว หากดำเนินการต่อไปจนเป็นฐานข้อมูลและตารางข้อมูลน่าจะตอบสนองความต้องการในการใช้ข้อมูลในเรื่องต่าง ๆ ได้ ตัวอย่างเช่น รายงานการสั่งซื้อสินค้าจากบริษัทอื่น รายงานการจำหน่ายสินค้า และรายงานสินค้าคงเหลือในคลัง
ไม่มีความคิดเห็น:
แสดงความคิดเห็น