ตาราง 'พนักงาน' มีคอลัมน์ 'เงินเดือน' และคอลัมน์ 'เงินเดือนรวมสิทธิ' ซึ่งคำนวณได้จากเงินเดือนบวกค่าตอบแทนอื่นๆ ที่เก็บอยู่ในตารางเดียวกัน การออกแบบนี้ละเมิดหลักการปกติรูปแบบใดของฐานข้อมูลเชิงสัมพันธ์

Second Normal Form (2NF) เนื่องจากมีการพึ่งพาบางส่วนของคีย์หลัก
Third Normal Form (3NF) เนื่องจากมีแอตทริบิวต์ที่ขึ้นอยู่กับแอตทริบิวต์อื่นที่ไม่ใช่คีย์หลัก
First Normal Form (1NF) เนื่องจากมีการเก็บข้อมูลหลายค่าในคอลัมน์เดียวกัน
Boyce-Codd Normal Form (BCNF) เนื่องจาก determinant ของตารางไม่ใช่ super key

เฉลยอธิบาย

การมีคอลัมน์ 'เงินเดือนรวมสิทธิ' ที่คำนวณมาจาก 'เงินเดือน' และ 'ค่าตอบแทนอื่นๆ' ซึ่งเป็นแอตทริบิวต์อื่นในตารางเดียวกัน ถือเป็น Transitive Dependency คือแอตทริบิวต์ที่ไม่ใช่คีย์ขึ้นอยู่กับแอตทริบิวต์ที่ไม่ใช่คีย์ด้วยกัน ซึ่งละเมิดหลัก Third Normal Form (3NF) โดยตรง การแก้ไขคือควรลบคอลัมน์ที่คำนวณได้ออก และใช้การคำนวณผ่าน Query แทน

ข้อสอบอื่นในวิชาความรู้ความสามารถในการวิเคราะห์ ออกแบบ ฐานข้อมูล

ดูข้อสอบวิชานี้ทั้งหมด →