มรดกของโต๊ะเดี่ยวคืออะไร?

Single table inheritance เป็นวิธีการเข้ารหัสที่การสืบทอดเชิงวัตถุซึ่งโดยปกติจะไม่รวมอยู่ในโปรแกรมฐานข้อมูลจะถูกจำลองสำหรับฐานข้อมูลเชิงสัมพันธ์ ด้วยการใช้สิ่งนี้ผู้ใช้จะสามารถเห็นความสัมพันธ์ระหว่างป้ายกำกับที่แตกต่างกันมากมายภายในตารางเดียวทำให้ผู้ใช้แยกย่อยหรือเพิ่มข้อมูลได้ง่ายขึ้น หากมีช่องว่างจำนวนมากหรือมีความสัมพันธ์จำนวนมากการใช้การสืบทอดตารางเดี่ยวอาจส่งคืนผลลัพธ์ที่ไม่คาดคิดซึ่งจะสร้างความสับสนให้กับผู้ออกแบบฐานข้อมูลขั้นสูง ด้วยสคีมาการสืบทอดฐานข้อมูลนี้ตารางเดี่ยวจะแสดงข้อมูลตามลำดับชั้น

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

ในการสืบทอดตารางเดี่ยวฟิลด์ทั้งหมดจะแสดงในตารางเดียว นี่ง่ายกว่าที่จะมองและลอดผ่าน ข้อมูลทั้งหมดที่แสดงในตารางไปจากด้านบนไปด้านล่าง ซึ่งหมายความว่าผู้แต่งจะอยู่ด้านบนของตารางเดียวและตัวอักษรตัวแรกของหนังสือจะอยู่ด้านล่าง

การสร้างรูปแบบการสืบทอดตารางเดียวอาจทำได้ยากในตอนแรกยกเว้นว่าผู้ออกแบบฐานข้อมูลจะคุ้นเคยกับการเข้ารหัส การทำแผนที่จากฐานข้อมูลเพื่อแยกวัตถุใน schema การเขียนโปรแกรมเชิงวัตถุ จะต้องมีหลายชั้นมิฉะนั้นจะไม่รวมกลุ่มทุกอย่างเข้าด้วยกันเป็นตารางเดียว

ปัญหาสองประเภทอาจทำให้การสืบทอดตารางเดี่ยวไม่ทำงาน หนึ่งคือถ้าวัตถุแสดงค่าเป็นศูนย์ หากเกิดเหตุการณ์นี้ค่า Null จะถูกโรยด้วยข้อมูลที่มีค่าในตารางการรับมรดก ซึ่งหมายความว่าตารางจะแสดงข้อมูลที่เกี่ยวข้อง แต่ทุก ๆ สองสามบรรทัดหรือบ่อยครั้งที่ค่า Null เกิดขึ้นคำว่า "Null" จะปรากฏขึ้นบริเวณใกล้เคียงหรือภายใต้ค่าอื่น

หากวัตถุที่ถูกแมปมีลำดับชั้นจำนวนมากโดยเฉพาะอย่างยิ่งลำดับชั้นที่ไม่คล้ายกันนี้ยังสามารถทำให้เกิดปัญหาสำหรับการสืบทอดตารางเดียว มีหลายลำดับชั้นมีโอกาสที่นักออกแบบอาจพลาดใครทำให้เกิดข้อผิดพลาดเชิงสัมพันธ์ หากลำดับชั้นไม่เหมือนกันดังนั้นฐานข้อมูลเชิงสัมพันธ์อาจมีปัญหาในการทำความเข้าใจการทำแผนที่ระหว่างชุดข้อมูล