Առաջնային բանալին ընդդեմ թեկնածուի բանալի
Չնայած հիմնական բանալին ընտրված է թեկնածուի ստեղներից, կան որոշակի տարբերություններ հիմնական և մյուս թեկնածու բանալիների միջև, որոնք մանրամասն կքննարկվեն այս հոդվածում: Տվյալների բազայի ձևավորումն ամենակարևոր գործողություններից մեկն է, որը պետք է արվի տվյալների պահպանման և պահպանման ժամանակ: Այս նախագծման գործընթացում պետք է ստեղծվեն տարբեր աղյուսակներ՝ բազմաթիվ հարաբերություններով: Տվյալների բազայում այս աղյուսակները մուտք գործելու համար տարբեր տեսակի բանալիներ օգտագործվում են տվյալների բազայի նախագծման ժամանակակից լեզուներում, ինչպիսիք են MYSQL, MSAccess, SQLite և այլն: Այս ստեղներից թեկնածու ստեղները և հիմնական բանալիները դարձել են տվյալների բազայի նախագծման պրակտիկաների կարևորությունը:
Ի՞նչ է թեկնածուի բանալին:
Թեկնածու ստեղնը տվյալների բազայի աղյուսակի մեկ սյունակ կամ սյունակների հավաքածու է, որը կարող է օգտագործվել տվյալների բազայի ցանկացած գրառումը եզակի կերպով նույնականացնելու համար՝ առանց որևէ այլ տվյալների հղում կատարելու: Տվյալների բազայի յուրաքանչյուր աղյուսակ կարող է ունենալ մեկ կամ ավելի թեկնածուի բանալիներ: Թեկնածու ստեղների մի շարք կարող է ստեղծվել՝ օգտագործելով ֆունկցիոնալ կախվածությունները: Թեկնածուի բանալիում կան որոշ կարևոր առանձնահատկություններ: Նրանք են;
• թեկնածուի բանալիները պետք է եզակի լինեն տիրույթում և չպետք է պարունակեն NULL արժեքներ:
• թեկնածուի ստեղնը երբեք չպետք է փոխվի, և այն պետք է պահպանի նույն արժեքը տվյալ անձի համար:
Թեկնածու բանալիի հիմնական նպատակն է օգնել մեծ աղյուսակի միլիոնավոր տողերից մեկ տող բացահայտելուն: Յուրաքանչյուր թեկնածուի բանալի որակավորված է առաջնային բանալին դառնալու համար: Այնուամենայնիվ, բոլոր թեկնածուների բանալիներից ամենակարևոր և հատուկ թեկնածու բանալին կդառնա աղյուսակի հիմնական բանալին և այն լավագույնն է թեկնածուների միջև:
Ի՞նչ է հիմնական բանալին:
Առաջնային բանալին աղյուսակի լավագույն թեկնածու բանալին է, որն օգտագործվում է աղյուսակում պահվող գրառումները եզակիորեն նույնականացնելու համար: Տվյալների բազայում նոր աղյուսակ ստեղծելիս մեզ խնդրում են ընտրել հիմնական բանալի: Հետևաբար, աղյուսակի համար առաջնային բանալին ընտրելը ամենակարևոր որոշումն է, որը պետք է կայացնի տվյալների բազայի դիզայները: Ամենակարևոր սահմանափակումը, որը պետք է հաշվի առնել հիմնական բանալին որոշելիս, այն է, որ աղյուսակի ընտրված սյունակը պետք է պարունակի միայն եզակի արժեքներ և չպետք է պարունակի NULL արժեքներ: Հիմնական բանալիներից մի քանիսը, որոնք սովորաբար օգտագործվում են աղյուսակների նախագծման ժամանակ, Սոցիալական ապահովության համարն են (SSN), ID և Ազգային նույնականացման քարտի համարը (NIC):
Ծրագրավորողը պետք է հիշի, որ զգուշորեն ընտրի հիմնական բանալին, քանի որ այն դժվար է փոխել: Հետևաբար, ըստ ծրագրավորողների, առաջնային բանալի ստեղծելու լավագույն պրակտիկան ներքին գեներացվող հիմնական բանալի օգտագործումն է, ինչպիսին է Record ID-ն, որը ստեղծվել է MS Access-ի AutoNumber տվյալների տեսակով:Եթե մենք փորձենք աղյուսակի մեջ գրառում մտցնել հիմնական բանալիով, որը կրկնօրինակում է գոյություն ունեցող գրառումը, տեղադրումը չի հաջողվի: Առաջնային բանալին չպետք է անընդհատ փոխվի, ուստի ավելի կարևոր է ստատիկ հիմնական բանալին պահելը:
Առաջնային բանալին լավագույն թեկնածուի բանալին է:
Ո՞րն է տարբերությունը հիմնական բանալիի և թեկնածուի բանալու միջև:
• Թեկնածու բանալին այն սյունակն է, որը որակվում է որպես եզակի, մինչդեռ հիմնական բանալին այն սյունն է, որը եզակի կերպով նույնականացնում է գրառումը:
• Առանց թեկնածուի ստեղների աղյուսակը որևէ կապ չի ներկայացնում:
• Տվյալների բազայում աղյուսակի համար կարող են լինել բազմաթիվ թեկնածուական ստեղներ, սակայն աղյուսակի համար պետք է լինի միայն մեկ հիմնական բանալին:
• Չնայած հիմնական բանալին թեկնածուի բանալիներից մեկն է, երբեմն այն միակ թեկնածու բանալին է:
• Հիմնական բանալին ընտրվելուց հետո մյուս թեկնածու ստեղները դառնում են եզակի բանալիներ:
• Գործնականում թեկնածուի ստեղնը կարող է պարունակել NULL արժեքներ, թեև այն ներկայումս որևէ արժեք չի պարունակում: Հետևաբար, թեկնածու բանալին որակավորված չէ հիմնական բանալի համար, քանի որ հիմնական բանալին չպետք է պարունակի NULL արժեքներ:
• Հնարավոր է նաև, որ թեկնածու ստեղները, որոնք այս պահին եզակի են, կարող են կրկնօրինակ արժեքներ պարունակել, որոնք թույլ չեն տալիս թեկնածու բանալին դառնալ հիմնական բանալի:
Ամփոփում՝
Առաջնային բանալին ընդդեմ թեկնածուի բանալի
Թեկնածու բանալին և առաջնային բանալին էական բանալիներ են, որոնք օգտագործվում են տվյալների շտեմարանների նախագծման համար, որպեսզի եզակիորեն նույնականացնեն տվյալները գրառումներում և կապեր հաստատեն տվյալների բազայի աղյուսակների միջև: Աղյուսակը պետք է պարունակի միայն մեկ հիմնական բանալի և կարող է պարունակել մեկից ավելի թեկնածու բանալիներ: Այսօր տվյալների բազաների մեծ մասն ի վիճակի է ավտոմատ կերպով ստեղծել իրենց հիմնական բանալին: Հետևաբար, առաջնային բանալին և թեկնածուի ստեղները բազմաթիվ աջակցություն են տրամադրում տվյալների բազայի կառավարման համակարգերին: