Ռեֆերանսի ամբողջականությունը տվյալների բազայի հնարավորությունն է հարաբերական տվյալների բազայի կառավարման համակարգերում: Այն ապահովում է տվյալների շտեմարանում աղյուսակների միջեւ փոխհարաբերությունները մնում են ճշգրիտ `կիրառելով խոչընդոտներ, օգտագործողներին կամ ծրագրերին կանխամտածված տվյալների մուտքագրման կամ մատնանշելու համար այն տվյալները, որոնք գոյություն չունեն:
Տվյալների բազաները օգտագործում են աղյուսակները, որոնք պարունակում են իրենց պարունակած տեղեկատվությունը: Նրանք նման են աղյուսակներ, ինչպիսիք են Excel- ը, բայց շատ ավելի ունակ է առաջադեմ օգտվողների համար: Տվյալների բազաները գործում են առաջնային բանալիների եւ արտաքին բանալիների օգտագործմամբ, որոնք պահպանում են սեղանների միջեւ հարաբերությունները:
Հիմնական բանալին
Տվյալների բազայի աղյուսակի հիմնական բանալին յուրաքանչյուր ռեկորդի համար նշանակված յուրահատուկ նույնացուցիչ է: Յուրաքանչյուր սեղան կունենա մեկ կամ ավելի սյունակ, որը նախատեսված է որպես առաջնային բանալին: Սոցիալական ապահովության համարը կարող է առաջնային բանալին աշխատողների տվյալների բազայի ցանկի համար, քանի որ յուրաքանչյուր Սոցիալական ապահովության համարը եզակի է:
Այնուամենայնիվ, գաղտնիության մտահոգությունների պատճառով նշանակված ընկերության ID- ն ավելի լավ ընտրություն է `աշխատողների համար առաջնային բանալին: Որոշ տվյալների բազայի ծրագրեր, ինչպիսիք են Microsoft- ը, ավտոմատ կերպով նշանակում է առաջնային բանալի, սակայն պատահական ստեղնը իրական իմաստ չունի: Ավելի լավ է օգտագործել բանալին իմաստով գրառումը: Առարկայական ամբողջականության ապահովման ամենալավ ձեւը թույլ չի տալիս փոփոխություններ կատարել առաջնային բանալին:
Օտար բանալի
Օտար բանալին նույն աղյուսակում է, որը համապատասխանում է տարբեր սեղանի առաջնային բանալին: Օտարերկրյա բանալին հարաբերությունները ստեղծում է տարբեր սեղանի հետ, եւ հիշյալ ամբողջականությունը վերաբերում է այդ սեղանների միջեւ փոխհարաբերություններին:
Երբ մեկ աղյուսակը արտասահմանյան բանալին ունի մեկ այլ աղյուսակ, հիշյալ ամբողջականության հասկացությունը հայտարարում է, որ դուք չեք կարող ավելացնել գրառումը այն սեղանին, որը պարունակում է օտարերկրյա բանալին, եթե առկա է համապատասխան գրառում համապատասխան աղյուսակում: Այն նաեւ ներառում է որպես կասկադային թարմացում եւ կասկադային ջնջում հայտնի մեթոդներ, որոնք ապահովում են, որ կապված սեղանին կատարված փոփոխությունները արտացոլվեն հիմնական աղյուսակում:
Փաստաթղթային ամբողջականության կանոնների օրինակ
Քննարկեք այն իրավիճակին, որտեղ դուք ունեք երկու աղյուսակ. Աշխատակիցներ եւ ղեկավարներ: Աշխատակիցների աղյուսակը ունի օտարերկրյա հիմնական հատկանիշ `ManagedBy- ը, որը նշում է Մենեջերների աղյուսակում յուրաքանչյուր աշխատողի մենեջերի համար գրառումը: Ուղղորդական ամբողջականությունը կիրառում է հետեւյալ երեք կանոնները.
- Դուք չեք կարող ավելացնել Ռեեստրի աշխատակիցների աղյուսակը, եթե ManagedBy- ի հատկանիշը ցույց է տալիս, որ վավեր գրառումը կառավարիչների աղյուսակում է: Ուղղորդական ամբողջականությունը խոչընդոտում է սեղանի մեջ սխալ մանրամասների տեղադրումը: Ցանկացած գործողություն, որը չի բավարարում հղումային ամբողջականության կանոնը:
- Եթե Մենեջերների աղյուսակում փոփոխության համար առաջնային բանալին փոփոխվի, Աշխատակիցների աղյուսակում բոլոր համապատասխան գրառումները փոփոխվում են, օգտագործելով cascading թարմացում:
- Եթե Մենեջերների աղյուսակում ջնջվեն գրառումը, աշխատողների աղյուսակում բոլոր համապատասխան գրառումները ջնջվում են `օգտագործելով կասկադային ջնջում:
Առաքելության ամբողջականության սահմանափակումների առավելությունները
Օգտագործելի տվյալների բազայի կառավարման համակարգը, օգտագործելով տվյալների ամբողջականությունը, առաջարկում է մի քանի առավելություններ.
- Կանխում է կրկնօրինակ տվյալների մուտքագրումը:
- Կանխում է մեկ սեղան `այլ աղյուսակում մատնանշելով գոյություն չունեցող դաշտ:
- Երաշխավորված հետեւողականությունը «գործընկեր» սեղանների միջեւ:
- Կանխում է ռեկորդի ջնջումը, որը պարունակում է այլ աղյուսակի օտարերկրյա բանալին նշված արժեք:
- Կանխում է ռեեստրի ավելացում մի աղյուսակի վրա, որը պարունակում է օտարերկրյա բանալին, եթե գոյություն չունեցող սեղանի հիմնական բանալին: