Referential integrity гэдэг нь өгөгдлийн сангийн менежментийн систем дэх өгөгдлийн сангийн онцлог юм. Энэ нь мэдээллийн бааз дахь хүснэгтийн хоорондын холбоог хэрэглэгчид, эсвэл програмууд нь буруу өгөгдөлд оруулахгүй, эсвэл байхгүй мэдээлэл рүү орохгүйн тулд хязгаарлалтуудыг хийх замаар үнэн зөв байх болно.
Өгөгдлийн сан нь хүснэгтэнд агуулагдсан мэдээллийг зохион байгуулахад ашигладаг. Эдгээр нь Excel гэх мэт хүснэгттэй төстэй боловч дэвшилтэт хэрэглэгчдэд илүү их чадвартай байдаг. Хүснэгтийн хоорондын уялдаа холбоог хангах гол түлхүүр болон гадаад түлхүүрүүдийг ашиглан өгөгдлийн сангийн функц.
Хүүхдийн түлхүүр
Өгөгдлийн сангийн хүснэгтийн үндсэн түлхүүр бол бүртгэл бүрийн хувьд өгөгдсөн өвөрмөц танигч юм. Хүснэгт бүр нь үндсэн түлхүүрийн нэг буюу хэд хэдэн багана байх болно. Нийгмийн Аюулгүй байдлын дугаар нь ажилтнуудынхаа мэдээллийн баазын мэдээллийн сангийн үндсэн түлхүүр байж болох бөгөөд учир нь Нийгмийн хамгааллын дугаар нь өвөрмөц онцлогтой байдаг.
Гэсэн хэдий ч хувийн нууцтай холбоотойгоор томилогдсон компанийн ID дугаар нь ажилтнуудын үндсэн түлхүүр болохын хувьд илүү сайн сонголт болдог. Microsoft Access зэрэг өгөгдлийн сангийн зарим програмууд нь анхан шатны түлхүүрийг автоматаар хуваарилдаг боловч санамсаргүй түлхүүр нь жинхэнэ утгатай биш юм. Тэмдэглэлд утгатай түлхүүр ашиглах нь дээр. Referential integrity-ийг хэрэгжүүлэх хамгийн хялбар арга бол үндсэн түлхүүрийн өөрчлөлтийг зөвшөөрөхгүй.
Гадаад түлхүүр
Гадаад түлхүүр үг нь өөр ширээн дэх үндсэн түлхүүртэй таарч байгаа хүснэгтийн таних тэмдэг юм. Гадаад түлхүүр нь өөр хүснэгтийн харилцааг бий болгодог бөгөөд лавлагааны бүрэн бүтэн байдал нь эдгээр хүснэгтүүдийн хоорондын хамаарлыг илэрхийлдэг.
Нэг хүснэгтэд өөр нэг хүснэгтийг гадаад хүснэгтэнд оруулах үед эффектийн бүрэн бүтэн байдлын концепц нь холболтын хүснэгтэд харгалзах бичлэг байхгүй бол гадаад түлхүүр агуулж буй хүснэгтэд бичиж болохгүй. Түүнчлэн, cascading update болон cascading delete гэж нэрлэгддэг арга техникийг холбох хүснэгтэд хийсэн өөрчлөлтүүд нь анхдагч хүснэгтэд тусгагдсан эсэхийг баталгаажуулдаг.
Дүйцлийн бүрэн бүтэн байдлын дүрмүүдийн жишээ
Ажилтан, менежер гэсэн 2 хүснэгттэй болсон нөхцөл байдлыг авч үзье. Ажилчдын хүснэгт нь ManagedBy нэртэй гадаадын гол шинж чанарыг агуулдаг бөгөөд энэ нь менежерүүдийн хүснэгт дэх ажилтан бүрийн менежерийн тэмдэглэлийг харуулдаг. Нэвтрүүлгийн шударга байдал нь дараах гурван дүрмийг хэрэгжүүлдэг:
- ManagedBy шинж чанар нь менежерийн хүснэгтэд хүчин төгөлдөр рекорд заагаагүй бол Ажилчдын хүснэгтэнд рекордыг нэмэх боломжгүй. Нэвтрэн орох бүрэн бүтэн байдал буруу хүснэгтийг хүснэгтэнд оруулахгүй болгоно. Хариуцлагатай бүрэн бүтэн байдлын дүрэм хангагдаагүй аливаа үйлдэл амжилтгүй болсон.
- Хэрэв менежерүүд дэхь бичлэгийн үндсэн түлхүүр өөрчлөгдвөл Ажилчдын хүснэгтэд байгаа бүх бүртгэлүүд нь cascading шинэчлэлтийг ашиглан өөрчилсөн болно.
- Хэрэв менежер хүснэгтийн бүртгэлийг устгасан бол ажилчдын хүснэгтэд байгаа бүх бүртгэлийг устгах замаар устгах болно.
Referential integrity constraints давуу талууд
Холбогдох өгөгдлийн сангийн менежментийн системийг referential integrity ашиглан ашиглах нь хэд хэдэн давуу талтай байдаг:
- Давхардсан өгөгдөл оруулахаас сэргийлнэ.
- Өөр ширээн дээр нэг хоосон биш чиглэл рүү чиглүүлэхээс нэг ширээг саатуулдаг.
- "Хамтран ажилласан" хүснэгтүүдийн хоорондох нийцэмжтэй байдал.
- Гадаад хүснэгтэнд заасан утга бүхий өөр хүснэгтэнд устгагдсан бүртгэлийг устгахыг хориглох.
- Холбогдсон хүснэгтийн үндсэн түлхүүр байхгүй бол гадаад түлхүүр агуулсан хүснэгтэнд тэмдэглэл нэмэх.