बीसीएनएफ अनावश्यकता को कम करता है और डेटा अखंडता बढ़ाता है
बॉयस-कोडड सामान्य फॉर्म (बीसीएनएफ) का लक्ष्य डेटाबेस सामान्यीकरण प्राप्त करने के लिए एक संबंधपरक डेटाबेस के कॉलम और तालिकाओं को व्यवस्थित करके डेटा अखंडता को बढ़ाने के लिए है। डेटाबेस सामान्यीकरण तब होता है जब टेबल के बीच स्थापित संबंध होते हैं और जब टेबल ने डेटाबेस को अधिक लचीला बनाने और डेटा को संरक्षित करने के लिए नियमों को परिभाषित किया है।
डेटाबेस सामान्यीकरण के लक्ष्य अनावश्यक डेटा को खत्म करना और डेटा निर्भरताओं को समझना सुनिश्चित करना है।
एक डेटाबेस सामान्यीकृत होता है जब एक ही डेटा एक से अधिक तालिका में संग्रहीत नहीं होता है और जब किसी तालिका में केवल संबंधित डेटा संग्रहीत किया जाता है।
बॉयस-कोडड सामान्य रूप की उत्पत्ति
दिशानिर्देशों की एक श्रृंखला के बाद सुनिश्चित करें कि डेटाबेस सामान्यीकृत हैं। इन दिशानिर्देशों को सामान्य रूपों के रूप में जाना जाता है और एक से पांच तक गिने जाते हैं। एक रिलेशनल डेटाबेस को सामान्यीकृत के रूप में वर्णित किया गया है यदि यह पहले तीन रूपों को पूरा करता है: 1 एनएफ, 2 एनएफ, और 3 एनएफ।
बीसीएनएफ को 1 9 74 में रेमंड बॉयस और एडगर कॉड द्वारा तीसरे सामान्य रूप, या 3 एनएफ के विस्तार के रूप में बनाया गया था। पुरुष डेटाबेस स्कीमा बनाने के लिए काम कर रहे थे जो कम्प्यूटेशनल समय को कम करने के लक्ष्य के साथ अनावश्यकता को कम करते हैं। तीसरा सामान्य रूप पहले और दूसरे सामान्य रूपों में दिशानिर्देशों को पूरा करने के अलावा प्राथमिक कुंजी पर निर्भर कॉलम को हटा देता है। बीसीएनएफ, जिसे कभी-कभी 3.5 एनएफ के रूप में जाना जाता है, 3 एनएफ की सभी आवश्यकताओं को पूरा करता है और उम्मीद करता है कि उम्मीदवार कुंजियों की तालिका में अन्य विशेषताओं पर कोई निर्भरता न हो।
बीसीएनएफ की रचना के समय, बॉयस संरचित अंग्रेजी क्वेरी भाषा (एसक्यूएल) के प्रमुख डेवलपर्स में से एक था, जिसने कोडड के रिलेशनल मॉडल का उपयोग कर डेटा पुनर्प्राप्ति में सुधार किया। इस मॉडल में, कोडड ने पाया कि डेटाबेस की संरचनात्मक जटिलता को कम किया जा सकता है, जिसका अर्थ है कि प्रश्न अधिक शक्तिशाली और लचीला हो सकते हैं।
अपने संबंधपरक डेटाबेस अंतर्दृष्टि का उपयोग करके, कोडड ने 1 एनएफ, 2 एनएफ, और 3 एनएफ दिशानिर्देश परिभाषित किए। उन्होंने बीसीएनएफ को परिभाषित करने के लिए बॉयस के साथ मिलकर काम किया।
उम्मीदवार कुंजी और बीसीएनएफ
एक उम्मीदवार कुंजी एक तालिका में स्तंभों का स्तंभ या संयोजन होता है जो डेटाबेस में एक अद्वितीय कुंजी बनाता है। गुणों का संयोजन किसी अन्य डेटा का संदर्भ दिए बिना डेटाबेस रिकॉर्ड की पहचान के लिए उपयोग किया जा सकता है। प्रत्येक तालिका में कई उम्मीदवार कुंजी हो सकती हैं, जिनमें से कोई भी प्राथमिक कुंजी के रूप में अर्हता प्राप्त कर सकता है। एक तालिका में केवल एक प्राथमिक कुंजी होती है।
अभ्यर्थी कुंजी अद्वितीय होना चाहिए।
बीसीएनएफ में एक संबंध है यदि हर निर्धारक उम्मीदवार कुंजी है। डेटाबेस तालिका पर विचार करें जो कर्मचारी की जानकारी संग्रहीत करता है और विशेषताएँ
इस तालिका में, क्षेत्र
कर्मचारी आयडी | पहला नाम | अंतिम नाम | शीर्षक |
13133 | एमिली | लोहार | मैनेजर |
13,134 | जिम | लोहार | साथी |
13135 | एमिली | जोन्स | साथी |
इस डेटाबेस के लिए उम्मीदवार कुंजी