เหตุใดจึงมีข้อ จำกัด ในฐานข้อมูลมากกว่าใช้รหัส
เหตุใดจึงมีข้อ จำกัด ในฐานข้อมูล มันจะไม่ยืดหยุ่นกว่าที่จะใส่ไว้ในรหัสหรือไม่ ฉันกำลังอ่านหนังสือผู้เริ่มต้นใช้งานฐานข้อมูลดังนั้นฉันจึงขอให้เป็นผู้เริ่มต้น สมมติว่าฉันได้ออกแบบฐานข้อมูลรวมถึงโมเดลเอนทิตีนี้: entity type | sub-types ----------------+-------------------------------------------- Person | Employee, Student, ... Student | Graduate, Undergraduate, ... Employee | Teacher, Administrator, ... ข้อ จำกัด ในปัจจุบัน: ผู้ที่ลงทะเบียนในระบบสามารถเป็นนักเรียนหรือพนักงานเท่านั้น บุคคลนิติบุคคลต้องมีหมายเลขสังคมที่ไม่ซ้ำกันซึ่งเราสันนิษฐานว่าทุกคนมีเพียงหนึ่งเดียวที่ไม่ซ้ำกัน (aka, คีย์หลักที่ดีพอ ) (ดู # 1) ต่อมาเราตัดสินใจที่จะลบหมายเลข 1: หากวันหนึ่งวิทยาลัยตัดสินใจว่าTeacher( Employeeประเภทย่อย) สามารถทำได้เช่นStudentกันการเรียนในเวลาว่างของพวกเขามันยากมากที่จะเปลี่ยนการออกแบบฐานข้อมูลซึ่งอาจมีหลายพันล้านล้าน zillions ของรายการมากกว่าแค่การเปลี่ยนลอจิกในโค้ด: ส่วนที่ไม่อนุญาตให้บุคคลที่ลงทะเบียนทั้งในฐานะนักเรียนและพนักงาน (มันไม่น่าจะเป็นไปได้มาก แต่ฉันไม่สามารถนึกถึงสิ่งอื่นได้ในตอนนี้ เห็นได้ชัดว่าเป็นไปได้) ทำไมเราใส่ใจกฎธุรกิจในการออกแบบฐานข้อมูลมากกว่าในรหัส? # …