การพึ่งพาอาศัยในฐานข้อมูลคืออะไร

หลีกเลี่ยงการพึ่งพาอาศัยเพื่อช่วยในการตรวจสอบให้ถูกต้อง

การพึ่งพาอาศัยกันในฐานข้อมูลเป็นความสัมพันธ์ทางอ้อมระหว่างค่าในตารางเดียวกันที่ทำให้เกิดการ พึ่งพาการทำงาน เพื่อให้ได้มาตรฐาน Normal Normal ของ Third Normal Form (3NF) คุณต้องลดการพึ่งพาอาศัยกัน

(หรือคอลัมน์ฐานข้อมูล) ที่มีการพึ่งพาการทำงานระหว่างพวกเขาซึ่งหมายความว่าคอลัมน์ A ในตารางขึ้นอยู่กับคอลัมน์ B ผ่านคอลัมน์กลาง C

ลองดูวิธีการนี้อาจจะทำงาน

ตัวอย่างการพึ่งพาอาศัย

ผู้เขียน

AUTHOR_ID ผู้เขียน หนังสือ Author_Nationality
Auth_001 Orson Scott Card เกม Ender สหรัฐ
Auth_001 Orson Scott Card เกม Ender สหรัฐ
Auth_002 Margaret Atwood เรื่องของหญิงรับใช้ แคนาดา

ในตัวอย่าง AUTHORS:

แต่ตารางนี้แนะนำพึ่งพาอาศัย:

หลีกเลี่ยงการพึ่งพาอาศัยกัน

เพื่อให้แน่ใจว่าแบบฟอร์มปกติที่สามขอเอา dependency transitive

เราสามารถเริ่มต้นด้วยการนำคอลัมน์หนังสือออกจากตารางผู้เขียนและสร้างตารางหนังสือแยกต่างหาก:

หนังสือ

Book_ID หนังสือ AUTHOR_ID
Book_001 เกม Ender Auth_001
Book_001 เด็กแห่งจิตใจ Auth_001
Book_002 เรื่องของหญิงรับใช้ Auth_002

ผู้เขียน

AUTHOR_ID ผู้เขียน Author_Nationality
Auth_001 Orson Scott Card สหรัฐ
Auth_002 Margaret Atwood แคนาดา

นี้แก้ไขได้หรือไม่ ลองตรวจสอบการอ้างอิงของเราตอนนี้:

ตารางหนังสือ :

ตาราง AUTHORS :

เราจำเป็นต้องเพิ่มตารางที่สามเพื่อทำให้ข้อมูลนี้เป็นแบบปกติ:

ออสเตรเลีย

Country_ID ประเทศ
Coun_001 สหรัฐ
Coun_002 แคนาดา

ผู้เขียน

AUTHOR_ID ผู้เขียน Country_ID
Auth_001 Orson Scott Card Coun_001
Auth_002 Margaret Atwood Coun_002

ขณะนี้เรามีสามตารางการใช้คีย์ต่างประเทศเพื่อเชื่อมโยงระหว่างตาราง:

ทำไมต้องพึ่งพาอาศัยอยู่ในการออกแบบฐานข้อมูลที่ไม่ดี

ค่าของการหลีกเลี่ยงการพึ่งพาอาศัยเพื่อช่วยให้มั่นใจว่าอะไรคือ 3NF? ลองพิจารณาตารางแรกของเราอีกครั้งและดูประเด็นที่จะสร้าง:

ผู้เขียน

AUTHOR_ID ผู้เขียน หนังสือ Author_Nationality
Auth_001 Orson Scott Card เกม Ender สหรัฐ
Auth_001 Orson Scott Card เด็กแห่งจิตใจ สหรัฐ
Auth_002 Margaret Atwood เรื่องของหญิงรับใช้ แคนาดา

การออกแบบประเภทนี้สามารถนำไปสู่ความผิดปกติของข้อมูลและความไม่สอดคล้องเช่น:

นี่เป็นเพียงเหตุผลที่ ทำให้การทำให้เป็นบรรทัดฐาน และหลีกเลี่ยงการพึ่งพาอาศัยการปกป้องข้อมูลและความสม่ำเสมอ