बॉयस-कॉड नॉर्मल फॉर्म का लक्ष्य डेटाबेस सामान्यीकरण को प्राप्त करने के लिए एक रिलेशनल डेटाबेस के कॉलम और टेबल को व्यवस्थित करके डेटा अखंडता को बढ़ाना है। डेटाबेस सामान्यीकरण तब होता है जब तालिकाओं के बीच स्थापित संबंध होते हैं और जब तालिकाओं ने डेटाबेस को अधिक लचीला बनाने और डेटा को संरक्षित करने के लिए नियमों को परिभाषित किया होता है।
डेटाबेस सामान्यीकरण के लक्ष्य अनावश्यक डेटा को खत्म करना और डेटा निर्भरता को सुनिश्चित करना है। एक डेटाबेस को सामान्यीकृत किया जाता है जब एक ही डेटा को एक से अधिक टेबल में संग्रहीत नहीं किया जाता है और जब केवल संबंधित डेटा एक तालिका में संग्रहीत किया जाता है।
बॉयस-कॉड नॉर्मल फॉर्म की उत्पत्ति
दिशानिर्देशों की एक श्रृंखला के बाद सुनिश्चित करें कि डेटाबेस सामान्यीकृत हैं। इन दिशानिर्देशों को सामान्य रूपों . के रूप में संदर्भित किया जाता है और एक से पांच तक गिने जाते हैं। एक रिलेशनल डेटाबेस को सामान्यीकृत . के रूप में वर्णित किया गया है अगर यह पहले तीन रूपों को पूरा करता है:1NF, 2NF, और 3NF।
1974 में रेमंड बॉयस और एडगर कोड द्वारा BCNF को तीसरे सामान्य रूप, या 3NF के विस्तार के रूप में बनाया गया था। पुरुष डेटाबेस स्कीमा बनाने के लिए काम कर रहे थे जो कम्प्यूटेशनल समय को कम करने के लक्ष्य के साथ अतिरेक को कम करते हैं। तीसरा सामान्य प्रपत्र उन स्तंभों को हटा देता है जो पहले और दूसरे सामान्य रूपों में दिशानिर्देशों को पूरा करने के अलावा प्राथमिक कुंजी पर निर्भर नहीं हैं। BCNF, जिसे कभी-कभी 3.5NF के रूप में संदर्भित किया जाता है, 3NF की सभी आवश्यकताओं को पूरा करता है और इसके लिए आवश्यक है कि उम्मीदवार कुंजियों की तालिका में अन्य विशेषताओं पर कोई निर्भरता न हो।
बीसीएनएफ के निर्माण के समय, बॉयस स्ट्रक्चर्ड इंग्लिश क्वेरी लैंग्वेज के प्रमुख डेवलपर्स में से एक था, जिसे बाद में एसक्यूएल के रूप में मानकीकृत किया गया, जिसने कॉड के रिलेशनल मॉडल का उपयोग करके डेटा पुनर्प्राप्ति में सुधार किया। इस मॉडल में, कॉड ने कहा कि डेटाबेस की संरचनात्मक जटिलता को कम किया जा सकता है, जिसका अर्थ है कि प्रश्न अधिक शक्तिशाली और लचीले हो सकते हैं।
अपने संबंधपरक डेटाबेस अंतर्दृष्टि का उपयोग करते हुए, कॉड ने 1NF, 2NF और 3NF दिशानिर्देशों को परिभाषित किया। उन्होंने बीसीएनएफ को परिभाषित करने के लिए बॉयस के साथ मिलकर काम किया।
कैंडिडेट की और BCNF
एक उम्मीदवार कुंजी तालिका में स्तंभों का एक स्तंभ या संयोजन है जो डेटाबेस में एक अद्वितीय कुंजी बनाता है। विशेषताओं का संयोजन किसी अन्य डेटा को संदर्भित किए बिना डेटाबेस रिकॉर्ड की पहचान करता है। प्रत्येक तालिका में कई उम्मीदवार कुंजी हो सकती हैं, जिनमें से कोई भी प्राथमिक कुंजी के रूप में योग्य हो सकती है। तालिका में केवल एक प्राथमिक कुंजी होती है।
उम्मीदवार कुंजियां अद्वितीय होनी चाहिए.
बीसीएनएफ में एक संबंध है यदि प्रत्येक निर्धारक एक उम्मीदवार कुंजी है। एक डेटाबेस तालिका पर विचार करें जो कर्मचारी जानकारी संग्रहीत करती है और जिसमें विशेषताएं हैं <कर्मचारी_आईडी>, <प्रथम_नाम> ,
इस तालिका में, फ़ील्ड <कर्मचारी_Id> निर्धारित करता है first_name और last_name। इसी तरह, टपल (
इस डेटाबेस के लिए उम्मीदवार कुंजी . है क्योंकि यह एकमात्र मान है जिसका उपयोग दूसरी पंक्ति द्वारा नहीं किया जा सकता है।
- बॉयस-कॉड नॉर्मल फॉर्म के लिए क्या आवश्यकताएं हैं?
एक तालिका बॉयस-कॉड नॉर्मल फॉर्म (बीसीएनएफ) की आवश्यकताओं को पूरा करती है यदि सभी निर्धारक उम्मीदवार कुंजी हैं और संबंध तीसरे सामान्य फॉर्म (3 एनएफ) में है। 3NF पहले नॉर्मल फॉर्म (1NF) और सेकेंड नॉर्मल फॉर्म (2NF) के नियमों को पूरा करता है, और सभी कॉलम प्राइमरी की पर निर्भर होते हैं।
- फोर्थ नॉर्मल फॉर्म और बॉयस-कॉड नॉर्मल फॉर्म में क्या अंतर है?
फोर्थ नॉर्मल फॉर्म (4NF) डेटाबेस नॉर्मलाइजेशन में बॉयस-कॉड नॉर्मल फॉर्म (BCNF) के बाद एक लेवल है। 4NF, BCNF की तरह ही 3NF आवश्यकताओं को पूरा करता है। हालाँकि, 4NF तालिकाओं में कोई बहु-मूल्यवान निर्भरताएँ या अनेक-से-एक संबंध नहीं होते हैं, जबकि BCNF तालिकाओं में ये निर्भरताएँ हो सकती हैं।