BCNF нь давтагдашгүй байдлыг багасгаж, өгөгдлийн бүрэн бүтэн байдлыг дээшлүүлдэг
Boyce-Codd Normal Form (BCNF) -ын зорилго нь өгөгдлийн бүрэн бүтэн байдлыг нэмэгдүүлэхийн тулд өгөгдлийн санг хэвийн болгохын тулд relational өгөгдлийн сангийн баганууд болон хүснэгтүүдийг зохион байгуулах замаар зохион байгуулдаг. Өгөгдлийн сангийн хэвшил нь хүснэгтүүдийн хоорондох харилцаа холбоо тогтсон үед, хүснэгтүүд нь өгөгдлийн санг илүү уян хатан болгох, өгөгдлийг хадгалахын тулд дүрмийг тодорхойлсон үед тохиолддог.
Өгөгдлийн сангийн хэвийн ажиллагааг хангах зорилго нь өгөгдөл солилцох өгөгдлийг арилгах, мэдээллийн хамаарлыг ойлгоход оршино.
Нэг өгөгдлийг нэгээс дээш хүснэгтэнд хадгалахгүй бөгөөд зөвхөн холбоотой өгөгдөл хүснэгтэд хадгалагдаж байх үед мэдээллийн санг хэвийн болгох болно.
Бойс-Кодд хэвийн маягт Гарал үүсэл
Сарийн удирдамжийн дагуу өгөгдлийн санг хэвийн болгохыг баталгаажуулна. Эдгээр удирдамжийг хэвийн хэлбэр гэж үздэг бөгөөд нэгээс таван хүртэлх тоогоор дугаарлана. Холбогдох мэдээллийн сан нь эхний гурван хэлбэрийг хангасан тохиолдолд 1NF, 2NF, болон 3NF гэсэн нөхцлийг хангаж өгдөг.
BCNF нь гурав дахь жирийн маягт, эсвэл 3NF, 1974 онд Рэймонд Бойс, Эдгар Кодд нараар өргөтгөсөн. Тооцооллын цагийг багасгах зорилго бүхий мэдээллийн санг бүтээхээр ажиллаж байсан хүмүүс. Гурав дахь хэвийн хэлбэр нь анхдагч болон хоёрдахь хэвийн маягтуудын удирдамжийг биелүүлэхийн зэрэгцээ анхан шатны түлхүүрээс хамааралгүй баганауудыг арилгана. Заримдаа 3.5NF гэж нэрлэгддэг BCNF нь 3NF-ийн бүх шаардлагыг хангаж байгаа бөгөөд нэр дэвшигч түлхүүрүүд нь хүснэгтийн бусад шинж чанаруудаас хамааралгүй байхыг шаарддаг.
BCNF-ийн бүтээн байгуулалтын үед Boyce нь Structured English Query Language (SQL) -н гол хөгжүүлэгчдийн нэг байсан бөгөөд Codd-ийн relational загварыг ашиглан өгөгдлийг сэргээх ажлыг сайжруулжээ. Энэ загварт Codd мэдээллийн баазын бүтцийн нарийн төвөгтэй байдлыг багасгаж болох тул асуулт нь илүү хүчтэй, уян хатан байж болох юм.
Түүний харьцуулсан өгөгдлийн санг ашиглан Codd нь 1NF, 2NF, болон 3NF удирдамжуудыг тодорхойлсон. Тэрбээр Boyce-тэй хамтран BCNF-ийг тодорхойлжээ.
Нэр дэвшигчийн түлхүүр ба BCNF
Нэр дэвшигчийн түлхүүр нь өгөгдлийн санд өвөрмөц түлхүүр үүсгэх хүснэгтийн багана буюу багана хослол юм. Аливаа бусад өгөгдлүүдийг дурдаагүйгээр өгөгдлийн сангийн бичлэгийг тодорхойлохын тулд шинж чанаруудын хослолыг ашиглаж болно. Хүснэгт бүр олон нэр дэвшигчийн түлхүүр агуулж болох бөгөөд тэдгээрийн аль нэг нь үндсэн түлхүүр болж чаддаг. Хүснэгтэд зөвхөн нэг үндсэн түлхүүр агуулна.
Нэр дэвшигчийн түлхүүрүүд өвөрмөц байх ёстой.
Хэрэв тодорхойлогч бүр нэр дэвшигчийн түлхүүр байвал холбоо харилцаа BCNF-д хамаарна. Ажилтны мэдээллийг хадгалдаг өгөгдлийн сангийн хүснэгтийг авч үзээд
Энэ хүснэгтэд
Ажилтны нэр | Нэр | Овог нэр | Гарчиг |
13133 | Эмили | Смит | Менежер |
13134 | Жим | Смит | Associate |
13135 | Эмили | Жонс | Associate |
Энэ өгөгдлийн сангийн нэр дэвшигчийн түлхүүр нь