Database Normalization Basics

Hoʻopilikelike i kāuʻikepili

Ināʻoe e hana nei me nā pūnaeweleʻike no kekahi manawa, hiki iāʻoe ke lohe i ka hoʻolālā manawa. Malia paha ua noi mai kekahi iāʻoe "He kūlana kūpono paha ia mea?" aiʻole "ʻO ia i BCNF ?" Hoʻopau pinepineʻia ka Normalization i mea hoʻonani e loaʻa wale ka manawa hoʻonaʻauao. Eia naʻe,ʻo kaʻikeʻana i nā kumukānāwai o ka hoʻoponoponoʻana a me ka hoʻokomoʻana i kāu mau hanaʻikepili no kēlā me kēia lā,ʻaʻole ia he mea paʻakikī a hiki ke hana maikaʻi i ka hana o kāu DBMS.

Ma kēiaʻatikala, e hoʻokomo mākou i ka manaʻo o ka hoʻolālāʻana a nānā i nā hiʻohiʻona o nāʻano maʻamau.

He aha ka Normalization?

ʻO ka hoʻolālāʻana keʻano o ka hoʻonohonoho maikaʻiʻana i nāʻikepili i loko o kahi pūnaewele. Elua mau pahuhopu o ke kaʻina hana maʻamau: ke hoʻopauʻana i nāʻikeʻikeʻole (e like me keʻano o ka waihoʻana i nāʻike like ma loko o ka papaʻaina aʻoi aku i ka hoʻokahi) a me ka hōʻoiaʻana i nā loiloiʻikeʻike (kahi mālama i nāʻike i pili i ka papa). ʻO nā pahuhopuʻelua kēia mau pahuhopu kūpono e like me ko lākou emiʻana i ka nui o ka lumi e hoʻopauʻia ai kaʻikepili me ka mālama pono i kaʻikepili.

Nā Nānā maʻamau

Ua hoʻokumu ke kaiāuluʻikepili i nā papahana no ka hōʻoiaʻana e hoʻomauʻia nā kahuaʻikepili. Hoʻoihoʻia kēia mauʻano he mauʻano maʻamau a heluʻia mai hoʻokahi (keʻano haʻahaʻa o ka hoʻolālāʻana, i kapaʻia heʻano maʻamau mua a iʻole 1NF) ma o kaʻalima maʻamau (lima maʻamau 5NF) paha. Ma nā papa hana, eʻike pinepineʻoe i 1NF, 2NF, a me 3NF me ka 4NF manawa kūpono. ʻAʻole iʻike nuiʻia ka pae maʻamau aʻaʻole e kūkāʻia ma kēiaʻatikala.

Ma mua o ka hoʻomakaʻana o kā mākou kūkākūkāʻana i nāʻano maʻamau, he mea nui e kuhikuhi i nā alakaʻi a me nā alakaʻi wale nō. I kekahi manawa, pono e hele aku mai o lākou e hālāwai me nāʻoihanaʻoihana. Eia naʻe, inā hoʻololiʻia nā hanana, he mea koʻikoʻi loa ke hoʻolālā i nā hōʻailona kūpono hiki iā lākou ke loaʻa ma kāu pūnaewele a me kāu helu no nā kuhihewa hikiʻole. ʻO kēlā'ōlelo, e nānā kākou i nāʻano maʻamau.

Nā Formal Normal (1NF)

ʻO ka hana mua (1NF) ke hoʻonohonoho i nā kānāwai kūikawā no kaʻikepili hoʻonohonoho hoʻonohonohoʻana:

Pō'ālua Haumana (2NF)

ʻO ka lua o nāʻano maʻamau (2NF) e pili ana i ke kumumanaʻo o ka weheʻana i nāʻikepili helu hou :

ʻO ke kolu kūikawā (3NF)

ʻO kaʻaoʻao maʻamauʻekolu (3NF) hele kekahi piʻi nui hou:

Boyce-Codd Mea Kūlohelohe (BCNF a 3.5NF paha)

ʻO ka Boyce-Codd Normal Form, i kapaʻiaʻo "ʻekolu a me ka hapalua (3.5) kūmole maʻamau", e hoʻohui hou i kahi koi hou:

Nā Palena KūhāʻEhā (4NF)

ʻO ka hopena,ʻo keʻano maʻamauʻehā (4NF) kekahi mau koi hou aʻe:

E hoʻomanaʻo, ua paʻakikī kēia mau kuʻuna maʻamau. No kaʻikepili i loko o 2NF, pono e hoʻokō mua i nā kānana a pau o kahi database 1NF.

Inā e hoʻolālā wau?

ʻOiai ka maʻalahi o nāʻikepili pinepine he manaʻo maikaʻi,ʻaʻole ia he koi kūpono. ʻO kaʻoiaʻiʻo, aia kekahi mau hihia i ka wā e hana kolohe ai i nā rula o ka hoʻolālāʻana he hana maikaʻi. No nā mea hou aku e pili ana i kēia kumuhana, e heluhelu i ka Pono e Nānā i kaʻu Kuleana?

Inā makemakeʻoe e hōʻoia i kāuʻikepili, hoʻomaka me ke aʻoʻana i ka hoʻokomoʻana i kāu database i ka Pelekane Nānā mua .