Бойс-Кодд Нормалдуу формасынын максаты - базаны нормалдаштырууга жетишүү үчүн реляциялык маалымат базасынын мамычаларын жана таблицаларын уюштуруу аркылуу берилиштердин бүтүндүгүн жогорулатуу. Берилиштер базасын нормалдаштыруу таблицалардын ортосунда түзүлгөн мамилелер болгондо жана таблицаларда маалымат базасын ийкемдүү кылуу жана маалыматтарды сактоо үчүн эрежелер аныкталганда ишке ашат.
Базалар базасын нормалдаштыруунун максаттары ашыкча берилиштерди жок кылуу жана берилиштерге көз карандылыктын маанисин камсыз кылуу. Бир эле маалыматтар бирден ашык таблицада сакталбаса жана таблицада тиешелүү маалыматтар гана сакталса, маалымат базасы нормалдаштырылган.
Бойс-Кодд нормалдуу формасынын келип чыгышы
Бир катар нускамаларды аткаруу менен маалымат базалары нормалдаштырылган. Бул көрсөтмөлөр кадимки формалар деп аталат жана бирден бешке чейин номерленген. Реляциялык маалымат базасы эгер ал алгачкы үч формага жооп берсе, нормалдаштырылган деп сүрөттөлөт: 1NF, 2NF жана 3NF.
BCNF 1974-жылы Раймонд Бойс жана Эдгар Кодд тарабынан үчүнчү нормалдуу форманын же 3NFтин кеңейтилиши катары түзүлгөн. Эркектер эсептөө убактысын кыскартуу максатында ашыкчаларды минималдаштыруучу маалымат базасынын схемаларын түзүүнүн үстүндө иштешкен. Үчүнчү нормалдуу форма биринчи жана экинчи нормалдуу формалардагы көрсөтмөлөргө жооп берүүдөн тышкары, негизги ачкычтан көз каранды болбогон мамычаларды алып салат. Кээде 3.5NF деп аталган BCNF 3NFтин бардык талаптарына жооп берет жана талапкер ачкычтары таблицадагы башка атрибуттардан көз каранды болбошун талап кылат.
BCNF түзүлгөн учурда Бойс кийинчерээк SQL катары стандартташтырылган, Кодддун реляциялык моделин колдонуу менен маалыматтарды издөөнү жакшырткан Structured English Query Languageтин негизги иштеп чыгуучуларынын бири болгон. Бул модельде Кодд маалымат базаларынын структуралык татаалдыгын кыскартууга болорун, бул сурамдардын күчтүүрөөк жана ийкемдүү болушу мүмкүн экенин айткан.
Озунун реляциялык маалымат базасы боюнча түшүнүктөрүн колдонуп, Кодд 1NF, 2NF жана 3NF көрсөтмөлөрүн аныктады. Ал Бойс менен биргеликте BCNFти аныктады.
Талапкер ачкычтары жана BCNF
Талапкер ачкычы – маалымат базасында уникалдуу ачкычты түзгөн таблицадагы мамычалар же тилкелердин айкалышы. Атрибуттардын айкалышы башка маалыматтарга кайрылбастан маалымат базасынын жазуусун аныктайт. Ар бир таблица бир нече талапкер ачкычтарын камтышы мүмкүн, алардын кайсынысы болбосун негизги ачкыч катары талап кылынышы мүмкүн. Таблица бир гана негизги ачкычты камтыйт.
Талапкердин ачкычтары уникалдуу болушу керек.
Эгерде ар бир детерминант талапкер ачкычы болсо, BCNFда мамиле болот. Кызматкерлердин маалыматын сактаган жана,,, жана. атрибуттары бар маалымат базасынын таблицасын карап көрөлү.
Бул таблицада талаа атын жана фамилиясын аныктайт. Ошо сыяктуу эле, кортеж (,) аныктайт.
Кызматчынын ID | Аты-жөнү | Фамилия | Аталышы |
13133 | Эмили | Смит | Менеджер |
13134 | Джим | Смит | Ассоциация |
13135 | Эмили | Джонс | Ассоциация |
Бул маалымат базасынын талапкер ачкычы, анткени ал башка сапта колдонулбай турган жалгыз маани.
КБС
Бойс-Кодддун нормалдуу формасына кандай талаптар коюлат?
Эгер бардык детерминанттар талапкер ачкычтары болсо жана байланыш Үчүнчү Кадимки формада (3NF) болсо, таблица Бойс-Кодд Нормалдуу формасынын (BCNF) талаптарына жооп берет. 3NF Биринчи Кадимки Форма (1NF) жана Экинчи Кадимки Форма (2NF) эрежелерине жооп берет жана бардык мамычалар негизги ачкычтан көз каранды.
Төртүнчү нормалдуу форма менен Бойс-Коддун нормалдуу формасынын ортосунда кандай айырма бар?
Төртүнчү Кадимки форма (4NF) маалымат базасын нормалдаштырууда Бойс-Кодд Нормалдуу формадан (BCNF) кийинки бир деңгээл. BCNF сыяктуу эле 4NF 3NF талаптарына жооп берет. Бирок, 4NF таблицаларында көп маанилүү көз карандылыктар же көп-бирден байланыштар жок, ал эми BCNF таблицаларында бул көз карандылыктар болушу мүмкүн.