Ընտրելով հիմնական բանալի տվյալների բազայի համար

Բովանդակություն:

Ընտրելով հիմնական բանալի տվյալների բազայի համար
Ընտրելով հիմնական բանալի տվյալների բազայի համար
Anonim

Տվյալների բազաները կախված են ստեղներից՝ պահելու, տեսակավորելու և համեմատելու կամ գրառումների միջև հարաբերություններ ստեղծելու համար: Եթե որոշ ժամանակ եղել եք տվյալների շտեմարաններում, հավանաբար լսել եք ստեղների տարբեր տեսակների մասին՝ հիմնական բանալիներ, թեկնածուի բանալիներ և օտար բանալիներ:

Երբ դուք ստեղծում եք տվյալների բազայի նոր աղյուսակ, ձեզնից կառաջարկվի ընտրել մեկ հիմնական բանալի, որը եզակի կերպով կբացահայտի այդ աղյուսակում պահվող յուրաքանչյուր գրառում:

Image
Image

Ինչու է առաջնային բանալին կարևոր

Առաջնային բանալու ընտրությունը ամենակարևոր որոշումներից մեկն է, որը դուք կկայացնեք տվյալների բազայի նախագծման ժամանակ: Ամենակարևոր սահմանափակումն այն է, որ դուք պետք է ապահովեք, որ ընտրված բանալին եզակի է:Եթե հնարավոր է, որ երկու գրառում (անցյալ, ներկա կամ ապագա) կարող են նույն արժեքը կիսել հատկանիշի համար, ապա դա վատ ընտրություն է առաջնային բանալու համար:

Առաջնային բանալու մեկ այլ կարևոր ասպեկտ է դրա օգտագործումը այլ աղյուսակների կողմից, որոնք կապում են դրան հարաբերական տվյալների բազայում: Այս առումով առաջնային բանալին գործում է որպես ցուցիչի թիրախ: Այս փոխկախվածության պատճառով առաջնային բանալին պետք է գոյություն ունենա, երբ ստեղծվում է գրառում, և այն երբեք չի կարող փոխվել:

Վատ ընտրություններ հիմնական բանալիների համար

Այն, ինչ որոշ մարդիկ կարող են համարել առաջնային բանալու ակնհայտ ընտրություն, փոխարենը կարող է վատ ընտրություն լինել: Ահա մի քանի օրինակ՝

  • Փոստային կոդերը լավ հիմնական բանալիներ չեն քաղաքների աղյուսակի համար: Եթե դուք քաղաքների պարզ որոնման աղյուսակ եք կազմում, ապա փոստային կոդը, կարծես, տրամաբանական առաջնային բանալի է: Այնուամենայնիվ, հետագա ուսումնասիրությունից հետո դուք կարող եք հասկանալ, որ մեկից ավելի քաղաքներ կիսում են փոստային ինդեքսը: Օրինակ, Նյու Ջերսիի Նեպտուն, Նեպտուն Սիթի, Թինթոն Ֆոլս և Ուոլ Թաունշիփ քաղաքները կիսում են 07753 փոստային կոդը:
  • Սոցիալական ապահովության համարները լավ հիմնական բանալիներ չեն հանդիսանում բազմաթիվ պատճառներով: Մարդկանց մեծամասնությունը համարում է իրենց SSN-ը մասնավոր և չեն ցանկանում, որ այն հստակ տեսանելի լինի տվյալների բազայի օգտագործողների համար: Բացի այդ, որոշ մարդիկ չունեն SSN:
  • Էլփոստի հասցեները նույնպես վատ ընտրություն են առաջնային բանալու համար: Չնայած դրանք եզակի են, դրանք կարող են փոխվել ժամանակի ընթացքում: Ավելին, ոչ բոլորն ունեն էլփոստի հասցե:

Ինչն է լավ հիմնական բանալին

Այսպիսով, ինչպե՞ս եք ընտրում արդյունավետ հիմնական բանալին: Շատ դեպքերում աջակցության համար դիմեք ձեր տվյալների բազայի համակարգին:

Տվյալների բազայի նախագծման լավագույն փորձը ներքին գեներացվող առաջնային բանալին օգտագործելն է: Ձեր տվյալների բազայի կառավարման համակարգը սովորաբար կարող է ստեղծել եզակի նույնացուցիչ, որը որևէ նշանակություն չունի տվյալների բազայի համակարգից դուրս:

Օրինակ, դուք կարող եք օգտագործել Microsoft Access AutoNumber տվյալների տեսակը՝ RecordID կոչվող դաշտ ստեղծելու համար: AutoNumber տվյալների տեսակը ավտոմատ կերպով ավելացնում է դաշտը ամեն անգամ, երբ դուք գրառում եք ստեղծում:Թեև թիվն ինքնին անիմաստ է, այն ապահովում է հարցումներում անհատական գրառումներին հղում կատարելու հուսալի միջոց:

Լավ հիմնական բանալին սովորաբար կարճ է, օգտագործում է թվեր և խուսափում է հատուկ նիշերից կամ մեծատառ ու փոքրատառ նիշերի խառնուրդից՝ հեշտացնելու տվյալների բազայի արագ որոնումն ու համեմատությունը:

Խորհուրդ ենք տալիս: