Տարբերությունը 1NF-ի և 2NF-ի և 3NF-ի միջև

Տարբերությունը 1NF-ի և 2NF-ի և 3NF-ի միջև
Տարբերությունը 1NF-ի և 2NF-ի և 3NF-ի միջև

Video: Տարբերությունը 1NF-ի և 2NF-ի և 3NF-ի միջև

Video: Տարբերությունը 1NF-ի և 2NF-ի և 3NF-ի միջև
Video: SSD vs Hard Drive vs Hybrid Drive 2024, Հուլիսի
Anonim

1NF vs 2NF vs 3NF

Նորմալացումը գործընթաց է, որն իրականացվում է հարաբերական տվյալների բազաներում առկա ավելորդությունները նվազագույնի հասցնելու համար: Այս գործընթացը հիմնականում մեծ աղյուսակները կբաժանի փոքր աղյուսակների՝ ավելի քիչ ավելորդություններով: Այս փոքր աղյուսակները կապված կլինեն միմյանց հետ լավ սահմանված հարաբերությունների միջոցով: Լավ նորմալացված տվյալների բազայում տվյալների ցանկացած փոփոխություն կամ փոփոխություն կպահանջի միայն մեկ աղյուսակի փոփոխություն: Առաջին նորմալ ձևը (1NF), Երկրորդ նորմալ ձևը (2NF) և Երրորդ նորմալ ձևը (3NF) ներկայացվել է Էդգար Ֆ. Քոդի կողմից, ով նաև հարաբերական մոդելի և նորմալացման հայեցակարգի հեղինակն է:

Ինչ է 1NF?

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

Ի՞նչ է 2NF:

2NF-ը երկրորդ նորմալ ձևն է, որն օգտագործվում է հարաբերական տվյալների բազաներում: Որպեսզի աղյուսակը համապատասխանի 2NF-ին, այն պետք է համապատասխանի 1NF-ին, և ցանկացած հատկանիշ, որը որևէ թեկնածուի բանալու մաս չէ (այսինքն՝ ոչ հիմնական ատրիբուտները) պետք է ամբողջությամբ կախված լինի աղյուսակի թեկնածուներից որևէ մեկից:

Ի՞նչ է 3NF?

3NF-ը երրորդ նորմալ ձևն է, որն օգտագործվում է հարաբերական տվյալների բազայի նորմալացման մեջ: Համաձայն Codd-ի սահմանման, աղյուսակը կոչվում է 3NF-ով, եթե և միայն այն դեպքում, եթե այդ աղյուսակը գտնվում է երկրորդ նորմալ ձևով (2NF), և աղյուսակի յուրաքանչյուր հատկանիշ, որը չի պատկանում թեկնածու բանալին, պետք է ուղղակիորեն կախված լինի: այդ աղյուսակի յուրաքանչյուր թեկնածուի ստեղնի վրա:1982 թվականին Կառլո Զանիոլոն ստեղծեց 3NF-ի այլ կերպ արտահայտված սահմանումը: 3NF-ին համապատասխանող աղյուսակները սովորաբար չեն պարունակում անոմալիաներ, որոնք տեղի են ունենում աղյուսակում գրառումները տեղադրելու, ջնջելու կամ թարմացնելու ժամանակ:

Ո՞րն է տարբերությունը 1NF-ի և 2NF-ի և 3NF-ի միջև:

1NF, 2NF և 3NF սովորական ձևեր են, որոնք օգտագործվում են հարաբերական տվյալների բազաներում՝ աղյուսակներում ավելորդությունները նվազագույնի հասցնելու համար: 3NF-ը համարվում է ավելի ուժեղ նորմալ ձև, քան 2NF-ը, և այն համարվում է ավելի ուժեղ նորմալ ձև, քան 1NF-ը: Հետևաբար, ընդհանուր առմամբ, 3NF ձևին համապատասխանող աղյուսակ ստանալը կպահանջի 2NF-ում գտնվող աղյուսակի տարրալուծում: Նմանապես, 2NF-ին համապատասխանող աղյուսակ ստանալը կպահանջի 1NF-ում գտնվող աղյուսակի տարրալուծում: Այնուամենայնիվ, եթե աղյուսակը, որը համապատասխանում է 1NF-ին, պարունակում է թեկնածուի բանալիներ, որոնք կազմված են միայն մեկ հատկանիշից (այսինքն՝ ոչ կոմպոզիտային թեկնածու բանալիներ), այդպիսի աղյուսակը ավտոմատ կերպով կհամապատասխանի 2NF-ին: Աղյուսակների տարրալուծումը կհանգեցնի լրացուցիչ միացման գործողությունների (կամ դեկարտյան արտադրանքների) հարցումներ կատարելիս:Սա կավելացնի հաշվարկման ժամանակը: Մյուս կողմից, աղյուսակները, որոնք համապատասխանում են ավելի ուժեղ նորմալ ձևերին, կունենան ավելի քիչ ավելորդություններ, քան այն աղյուսակները, որոնք համապատասխանում են միայն ավելի թույլ նորմալ ձևերին:

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