จากอี-อาร์โมเดลของระบบฐานข้อมูลงานซื้อขายสินค้าในซุปเปอร์สโตร์ในเรื่องที่ 7.2.1 ข้างต้น หากนำมาทำให้อยู่ในรูปแบบที่เป็นบรรทัดฐานสามารถทำได้ดังนี้
อี-อาร์โมเดลของระบบฐานข้อมูลงานซื้อขายสินค้าในซุปเปอร์สโตร์ประกอบด้วย 5 เอนทิตี คือ เอนทิตีสินค้า เอนทิตีใบสั่งซื้อสินค้า เอนทิตีบริษัทขายส่ง เอนทิตีใบส่งสินค้า เอนทิตีใบเสร็จรับเงิน และระบบฐานข้อมูลดังกล่าวมีความสัมพันธ์ระหว่างเอนทิตีว่า มี 10 ความสัมพันธ์ คือ
เมื่อทำการแปลงเอนทิตีให้เป็นรีเลชัน และแปลงความสัมพันธ์ระหว่างเอนทิตีเป็นความสัมพันธ์ระหว่างรีเลชัน ระบบฐานข้อมูลเชิงสัมพันธ์งานซื้อขายสินค้าในซุปเปอร์สโตร์จะประกอบด้วย 5 รีเลชัน คือ รีเลชันสินค้า รีเลชันใบสั่งซื้อสินค้า รีเลชันบริษัทขายส่ง รีเลชันใบส่งสินค้า และรีเลชันใบเสร็จรับเงิน โดยมีความสัมพันธ์ระหว่างรีเลชัน 10 ความสัมพันธ์ คือ
ดังนั้น โครงร่างฐานข้อมูลเชิงสัมพันธ์ของงานซื้อขายสินค้าในซุปเปอร์สโตร์ ในแต่ละรีเลชันจะประกอบด้วยแอททริบิวต์ต่าง ๆ คีย์หลัก และคีย์นอก ดังนี้คือ
รหัสบริษัท |
ชื่อบริษัท |
ที่อยู่ |
โทรศัพท์ |
รหัสสินค้า |
ชื่อสินค้า |
สินค้าในคลัง |
ราคาขายต่อหน่วย |
จุดสั่งซื้อ |
รหัสบริษัท |
เลขที่ใบสั่งซื้อ |
วันที่สั่งซื้อ |
รหัสบริษัท |
เลขที่ใบสั่งซื้อ |
รหัสสินค้า |
จำนวนที่สั่งซื้อ |
เนื่องจากรีเลชันบริษัทขายส่งมีความสัมพันธ์แบบหนึ่งต่อกลุ่มกับรีเลชันใบส่งสินค้า รีเลชัน ใบส่งสินค้าจึงต้องมีแอททริบิวต์รหัสบริษัทเพิ่มขึ้นด้วย โดยแอททริบิวต์รหัสบริษัทเป็นคีย์นอกที่ใช้ในการเชื่อมโยงข้อมูลกับรีเลชันบริษัทขายส่ง
เลขที่ใบส่งสินค้า |
วันที่ส่งสินค้า |
ราคาขายส่งต่อหน่วย |
เลขที่ใบสั่งซื้อ |
รหัสบริษัท |
เลขที่ใบสั่งซื้อ |
รหัสสินค้า |
เลขที่ใบเสร็จรับเงิน |
วันที่ออกใบเสร็จ |
เลขที่ใบเสร็จรับเงิน |
รหัสสินค้า |
จำนวนที่ขาย |
โดยทั่วไปการทำให้แต่ละรีเลชันมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานนั้นมักจะทำจนถึงรูปแบบที่เป็นบรรทัดฐานขั้นที่ 3 แต่อาจมีในบางกรณีที่ผู้ออกแบบฐานข้อมูลจำเป็นต้องดำเนินการให้รีเลชันนั้นมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานของบอยส์และคอดด์ หรือรูปแบบที่เป็นบรรทัดฐานขั้นที่ 4 และ 5
ดังนั้น เพื่อขจัดปัญหาความซ้ำซ้อนของข้อมูลที่อาจเกิดขึ้นในแต่ละรีเลชันจึงต้องจัดทำรีเลชันให้เป็นรูปแบบที่เป็นบรรทัดฐาน โดยลำดับแรก คือ การตรวจสอบว่า รีเลชันมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานใดก่อนที่จะทำให้เป็นรูปแบบที่เป็นบรรทัดฐานในขั้นต่อไป
จากการตรวจสอบโครงร่างฐานข้อมูลเชิงสัมพันธ์ของระบบฐานข้อมูลงานซื้อขายสินค้าในซุปเปอร์ สโตร์จะพบว่า
รหัสบริษัท |
ชื่อบริษัท |
ที่อยู่ |
โทรศัพท์ |
รหัสสินค้า |
ชื่อสินค้า |
สินค้าในคลัง |
ราคาขายต่อหน่วย |
จุดสั่งซื้อ |
รหัสบริษัท |
เลขที่ใบสั่งซื้อ |
วันที่สั่งซื้อ |
รหัสบริษัท |
เลขที่ใบส่งสินค้า |
วันที่ส่งสินค้า |
ราคาขายส่งต่อหน่วย |
เลขที่ใบสั่งซื้อ |
รหัสบริษัท |
เลขที่ใบเสร็จรับเงิน |
วันที่ออกใบเสร็จ |
ทั้ง 5 รีเลชัน คือ รีเลชันบริษัทขายส่ง รีเลชันสินค้า รีเลชันใบสั่งซื้อสินค้า รีเลชันใบส่งสินค้า และ รีเลชันใบเสร็จรับเงิน มีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 5 แล้ว เนื่องจาก
ทั้ง 5 รีเลชันต่างก็มีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 1 แล้ว เนื่องจากทุกแอททริบิวต์ในแต่ละทูเพิลมีค่าของข้อมูลเพียงค่าเดียว
ทั้ง 5 รีเลชันต่างก็มีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 2 แล้ว เนื่องจากไม่มี ความสัมพันธ์ระหว่างแอททริบิวต์แบบบางส่วนเกิดขึ้น
ทั้ง 5 รีเลชันต่างก็มีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 3 แล้ว เนื่องจากไม่มี ความสัมพันธ์ระหว่างแอททริบิวต์แบบ Transitive เกิดขึ้น
ทั้ง 5 รีเลชัน ต่างก็มีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานของบอยส์และคอดด์แล้ว เนื่องจากไม่มีแอททริบิวต์ใดในรีเลชันที่สามารถระบุค่าของแอททริบิวต์ที่เป็นคีย์หลัก หรือส่วนใดส่วนหนึ่งของ แอททริบิวต์ที่ประกอบกันเป็นคีย์หลักได้
ทั้ง 5 รีเลชันต่างก็มีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 4 แล้ว เนื่องจากไม่มี ความสัมพันธ์ระหว่างแอททริบิวต์แบบหลายค่า
ทั้ง 5 รีเลชันต่างก็มีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 5 แล้ว เนื่องจากมีความสัมพันธ์ระหว่างแอททริบิวต์แบบ Join
ส่วนรีเลชันอื่น ๆ อีก 3 รีเลชัน คือ รีเลชันการจัดทำ รีเลชันการส่ง และรีเลชันการขาย
เลขที่ใบสั่งซื้อ |
รหัสสินค้า |
จำนวนที่สั่งซื้อ |
เลขที่ใบสั่งซื้อ |
รหัสสินค้า |
เลขที่ใบเสร็จรับเงิน |
รหัสสินค้า |
จำนวนที่ขาย |
จากการตรวจสอบพบว่า ทั้ง 3 รีเลชันมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 5 แล้ว เนื่องจาก
ทั้ง 3 รีเลชันต่างก็มีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 1 แล้ว เนื่องจากทุกแอททริบิวต์ในแต่ละทูเพิลมีค่าของข้อมูลเพียงค่าเดียว
ทั้ง 3 รีเลชันต่างก็มีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 2 แล้ว เนื่องจากไม่มี ความสัมพันธ์ระหว่างแอททริบิวต์แบบบางส่วนเกิดขึ้น
ทั้ง 3 รีเลชันต่างก็มีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 3 แล้ว เนื่องจากไม่มี ความสัมพันธ์ระหว่างแอททริบิวต์แบบ Transitive เกิดขึ้น
ทั้ง 3 รีเลชันต่างก็มีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานของบอยส์และคอดด์แล้ว เนื่องจากไม่มีแอททริบิวต์ใดในรีเลชันที่สามารถระบุค่าของแอททริบิวต์ที่เป็นคีย์หลัก หรือส่วนใดส่วนหนึ่งของแอททริบิวต์ที่ประกอบกันเป็นคีย์หลักได้
ทั้ง 3 รีเลชันต่างก็มีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 4 แล้ว เนื่องจากไม่มี ความสัมพันธ์ระหว่างแอททริบิวต์แบบหลายค่า
ทั้ง 3 รีเลชันต่างก็มีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 5 แล้ว เนื่องจากไม่มี ความสัมพันธ์ระหว่างแอททริบิวต์แบบ Join