तीसरा सामान्य रूप

Tisara Saman Ya Rupa



यह श्रृंखला का भाग तीन है, पाँच सामान्य रूप। पहले दो भागों (ट्यूटोरियल) के शीर्षक पहले सामान्य रूप हैं, उसके बाद दूसरा सामान्य रूप है। श्रृंखला के इस भाग में तीसरे सामान्य रूप की व्याख्या की गई है।

स्पष्टीकरण कहानी रेखा का अनुसरण करता है: एक पिता की मृत्यु हो गई है और उसने अपने बेटे के लिए कुछ पैसे छोड़े हैं। बेटे ने पैसे को एक सुविधा स्टोर में निवेश करने का फैसला किया। एक सुविधा स्टोर, जिसे सुविधा स्टोर के रूप में भी जाना जाता है, एक छोटा खुदरा व्यवसाय है जो आपूर्तिकर्ताओं से रोजमर्रा की वस्तुओं को प्राप्त करता है और उन्हें पड़ोस में अलग-अलग ग्राहकों को बेचता है।







इस बिंदु पर, दुकान में पहले से ही स्टॉक है, और कुछ बिक्री पहले ही की जा चुकी है। बेटा, जो व्यवसाय का मालिक है, के कुछ कर्मचारी हैं, जिन्हें इस ट्यूटोरियल में क्लर्क कहा जाता है। प्रोप्राइटर और कोई भी कर्मचारी उत्पादों को रिकॉर्ड करने के बाद आपूर्ति प्राप्त कर सकता है और बिक्री कर सकता है।



हालाँकि, दुकान शुरू होने से पहले, न तो मालिक और न ही कर्मचारियों को सामान्य रूपों के बारे में कुछ पता था। इसलिए, वे सब कुछ लेनदेन के रूप में एक तालिका और एक अभ्यास पुस्तिका में दर्ज कर रहे थे। उनके पास कंप्यूटर नहीं था।



आप, पाठक, इस ट्यूटोरियल श्रृंखला के पाँच भागों को पूरा कर चुके हैं; अब आप एक डेटाबेस डेवलपर हैं। सुविधा की दुकान का मालिक आपका मित्र है। आपने दो दिन पहले दुकान का दौरा किया और मालिक और क्लर्क को उसके पहले सामान्य रूप में टेबल बनाने का प्रशिक्षण दिया। आप कल भी दुकान पर गए थे और उन्हें पहले सामान्य रूप से दूसरे सामान्य रूप में तालिका बनाने का प्रशिक्षण दिया था।





आज, आप उन्हें प्रशिक्षित करने के लिए दुकान पर आए हैं कि दूसरे सामान्य रूप से तीसरे सामान्य रूप में तालिका कैसे बनाई जाए। वर्तमान में उनके पास जितने भी सारणियां हैं, वे दूसरे सामान्य रूप में हैं। तालिकाएँ (नाम और स्तंभ शीर्षकों द्वारा) हैं:

उत्पाद (उत्पाद आईडी, श्रेणी आईडी, उत्पाद)
श्रेणियाँ (श्रेणी आईडी, श्रेणी)



बिक्री (बिक्री आईडी, ग्राहक, कर्मचारी, दिनांक)
बिक्री विवरण (बिक्री आईडी, उत्पाद आईडी, संख्या बेची गई, बिक्री मूल्य)

आदेश (आदेश आईडी, आपूर्तिकर्ता, कर्मचारी, दिनांक)
ऑर्डर विवरण (ऑर्डर आईडी, उत्पाद आईडी, नंबर खरीदा, लागत मूल्य)

एकल या समग्र कुंजियों को रेखांकित किया गया है।

पिछले दो दिनों में जो सिखाया गया था उसका सारांश देने के बाद और इससे पहले कि आप कुछ कर पाते, मालिक पूछता है:

'ग्राहकों और कर्मचारियों के फोन नंबर, पते आदि के बारे में क्या?

उत्पादों के लिए स्टॉक में मात्रा, रीऑर्डर स्तर आदि के बारे में क्या?
क्या उन्हें अपनी अलग टेबल की जरूरत है, या उन्हें मौजूदा टेबल में फिट किया जाना चाहिए?

आप, डेटाबेस डेवलपर, उत्तर दें:

“बधाई हो, मालिक! आपने अप्रत्यक्ष रूप से थर्ड नॉर्मल फॉर्म के मुद्दे को पेश किया है।

आप जारी रखें।

अन्य आवश्यक कॉलम

अन्य आवश्यक कॉलम पहले पिछली तालिकाओं में जोड़े जाते हैं, जो 1NF और 2NF में हैं। पिछले कॉलम के कुछ नाम संशोधित किए गए हैं।

कम से कम, श्रेणियाँ तालिका में निम्नलिखित कॉलम होने चाहिए:

श्रेणियाँ (श्रेणी आईडी, श्रेणीनाम, विवरण)

विवरण एक छोटा पैराग्राफ है जो श्रेणी का वर्णन करता है। यह श्रेणी तालिका पहले से ही 1NF, 2NF और 3NF में है। 3NF को नीचे समझाया गया है:

न्यूनतम के रूप में, उत्पाद तालिका में निम्न स्तंभ होने चाहिए:

उत्पाद (उत्पाद आईडी, श्रेणी आईडी, आपूर्तिकर्ता आईडी, उत्पाद का नाम, इकाई मूल्य, मात्रा इनस्टॉक, रीऑर्डर लेवल)

जैसा कि प्रत्येक उत्पाद बेचा जा रहा है, उत्पादों के एक निम्न स्तर (संख्या) पर पहुंच जाएगा जब उत्पाद को फिर से ऑर्डर करना होगा, इसलिए ग्राहकों को दुकान पर नहीं आना चाहिए और उत्पाद नहीं लेना चाहिए। ऐसी अनुपस्थिति व्यवसाय के लिए अच्छी नहीं है। QuantityInStock स्टॉक में किसी विशेष उत्पाद की संख्या है। इसमें स्टोर में क्या है और शेल्फ पर क्या शामिल है।

श्रेणी आईडी और आपूर्तिकर्ता आईडी विदेशी कुंजी हैं। यही कारण है कि उनके पास सिंगल अंडरलाइन के बजाय डैश अंडरलाइन है। विदेशी कुंजी नीचे समझाया गया है। श्रृंखला के पिछले भाग (द्वितीय सामान्य रूप) में, श्रेणी आईडी प्राथमिक कुंजी का हिस्सा था, जिस पर यह कैसे पहुंचा गया था। हालांकि, नीचे दी गई व्याख्या से, यह स्पष्ट होगा कि श्रेणी आईडी एक विदेशी कुंजी (डैश अंडरलाइन के साथ) होनी चाहिए।

यह उत्पाद तालिका पहले से ही 1NF, 2NF और 3NF में है। देखें कि यह नीचे 3NF में क्यों है:

कम से कम, बिक्री विवरण तालिका में निम्न स्तंभ होने चाहिए:

बिक्री विवरण (बिक्री आईडी, उत्पाद आईडी, इकाई बिक्री मूल्य, मात्रा, छूट)

अधिकांश समय छूट का मूल्य शून्य होने की उम्मीद है। छूट वह छूट है जो दुकान ग्राहक को देती है।

कम से कम, ऑर्डर विवरण तालिका में निम्नलिखित कॉलम होने चाहिए:

ऑर्डर विवरण (ऑर्डर आईडी, उत्पाद आईडी, इकाई लागत मूल्य, मात्रा, छूट)

अधिकांश समय छूट का मूल्य शून्य होने की उम्मीद है। यहां छूट वह छूट है जो आपूर्तिकर्ता दुकान को देता है।

जैसा कि नीचे देखा गया है, उत्पाद तालिका को 2NF या 3NF में माना जा सकता है। सेल्स एंड ऑर्डर टेबल में 3NF का मुद्दा है। समस्या और समाधान को समझाने के लिए केवल बिक्री तालिका का उपयोग किया जाएगा। आदेश तालिका और उत्पाद तालिका के लिए 3NF समान तर्क का पालन करते हैं और केवल उद्धृत किए जाएंगे।

कॉलम जोड़ते समय, बिक्री तालिका होगी:

बिक्री (बिक्री आईडी, तारीख बेची गई ग्राहक का नाम, फोन, पता, शहर, क्षेत्र, डाक कोड, देश, कर्मचारी)

मूल तालिका में सात स्तंभों ने ग्राहक स्तंभ को बदल दिया है। चूंकि ग्राहक आस-पड़ोस के लोग हैं, इसलिए शहर, क्षेत्र (राज्य), डाक कोड और देश के कॉलम के लिए सेल खाली छोड़े जा सकते हैं, हालांकि इस लेख में उन्हें खाली नहीं छोड़ा गया है।

यह बिक्री तालिका अभी भी 2NF में है क्योंकि 1NF और 2NF दोनों नियमों का उल्लंघन नहीं किया गया है। हालांकि, यह महसूस किया जाना चाहिए कि बिक्री तालिका पंक्ति में, ग्राहक (नाम) को सात ग्राहक पंक्ति कक्षों द्वारा प्रतिस्थापित किया गया है।

ध्यान दें: एक एड्रेस सेल में घर का नंबर, सड़क या सड़क का नाम और शहर का नाम होता है, सभी को अल्पविराम से अलग किया जाता है। एक शहर को कई कस्बों से बना माना जा सकता है। हालांकि अल्पविराम इन विशेष स्ट्रिंग घटकों को अलग करते हैं, वे एक सेल मान बनाते हैं न कि तीन सेल मान।

कर्मचारी कॉलम को भी ऐसे सात कॉलम से बदलना होगा। हालांकि, शिक्षण समय और स्थान बचाने के लिए इस ट्यूटोरियल में ऐसा नहीं किया गया है। तो, डेटा के साथ एक बिक्री तालिका हो सकती है:

बिक्री तालिका - 2NF - ग्राहक आईडी के बिना

डेटा प्रकार सेलआईडी कॉलम एक पूर्णांक या बेहतर, ऑटो-इंक्रीमेंट है। दिनांकित स्तंभ का डेटा प्रकार दिनांक है न कि कोई संख्या क्योंकि इसमें वर्ण '/' है, जो अंक नहीं है। फ़ोन स्तंभ सहित शेष स्तंभों के लिए डेटा प्रकार स्ट्रिंग (या पाठ) है। फ़ोन मान में वर्ण '-' है, जो अंक नहीं है।

ध्यान दें कि प्रत्येक पंक्ति के लिए, ग्राहक (नाम), जैसा कि श्रृंखला के पिछले भाग में था, को सात सेल से बदल दिया गया है, जिनमें से एक अभी भी ग्राहक-नाम है। इसका मतलब है कि ग्राहक डेटा एक इकाई है। वर्तमान में, ग्राहक-नाम एक पंक्ति में इसके अन्य छह डेटा की पहचान करता है। यदि यह तालिका क्रमादेशित है, तो प्रत्येक पंक्ति में एक पूर्णांक (स्वत: वृद्धि नहीं) के साथ ग्राहक इकाई की पहचान करना सुविधाजनक होगा। उस स्थिति में, CustomerID कॉलम CustomerName से पहले होना चाहिए। पिछली तालिका बन जाती है:

बिक्री तालिका - 2NF - CustomerID के साथ

तीन ग्राहक आईडी हैं: 1, 2, और 3, जिसमें 1 जॉन स्मिथ के लिए पांच बार आता है, 2 जेम्स टेलर के लिए दो बार आता है, और 3 सुसान राइट के लिए एक बार आता है।

ध्यान दें कि कुछ ग्राहक आईडी और उनके आश्रित दोहराते हैं।

तीसरे सामान्य रूप के नियम

एक तालिका तीसरे सामान्य रूप में है यदि यह निम्नलिखित नियमों का पालन करती है:

  1. यह पहले से ही दूसरे सामान्य रूप में होना चाहिए।
  2. और इसमें सकर्मक निर्भरता नहीं होनी चाहिए।

तब क्लर्कों (कर्मचारियों) में से एक पूछता है, 'सकर्मक निर्भरता क्या है?'। और आप, डेटाबेस डेवलपर, उत्तर देते हैं, 'यह एक अच्छा प्रश्न है!'

सकर्मक निर्भरता

यह सच है कि एक पंक्ति में, सेलआईडी पंक्ति में सभी मानों की पहचान करता है; हालाँकि, CustomerID अपने सात डेटा मानों की पहचान करता है, लेकिन उस पंक्ति में SaleID द्वारा पहचाने गए शेष मानों की पहचान नहीं करता है। दूसरा तरीका रखो, सेलआईडी प्रत्येक पंक्ति में दस सेल मानों पर निर्भर करता है। हालाँकि, CustomerID एक ही पंक्ति में सात सेल मानों पर निर्भर करता है, लेकिन CustomerID सेलआईडी और अन्य मूल्यों पर निर्भर नहीं करता है, जिन पर सेलआईडी निर्भर करता है।

CustomerID के लिए ऐसी निर्भरता सकर्मक निर्भरता है। और CustomerID को एक विदेशी कुंजी कहा जाता है और इस ट्यूटोरियल श्रृंखला, द फाइव नॉर्मल फॉर्म्स में डैश को रेखांकित किया गया है।

मान लीजिए कि एक गैर-प्राइम विशेषता (गैर-प्राथमिक सेल मान) अन्य गैर-प्रमुख विशेषताओं पर निर्भर करती है, और प्रश्न में गैर-प्रमुख विशेषता (जैसे, CustomerID और उसके आश्रित) प्राथमिक कुंजी और शेष सेल पर निर्भर नहीं करती है पंक्ति में मान। तब वह सकर्मक निर्भरता है।

विदेशी कुंजी और उसके आश्रितों के साथ पिछली बिक्री तालिका, लेखांकन समस्याओं (विसंगतियों) का कारण बनेगी।

बिक्री तालिका 2NF से 3NF तक

विदेशी कुंजी और उसके आश्रितों द्वारा उत्पन्न समस्या को हल करने के लिए, बिना दोहराव के एक नई तालिका बनाने के लिए, विदेशी कुंजी और उसके आश्रितों को हटा दें। हालाँकि, भले ही विदेशी कुंजी प्राथमिक कुंजी पर निर्भर न हो, प्राथमिक कुंजी विदेशी कुंजी पर निर्भर करती है। इसलिए, विदेशी कुंजी की एक प्रति मूल तालिका में रहनी चाहिए। नई बिक्री तालिका, इस समय, 1NF, 2NF, और 3NF के अनुरूप है; यह एक मूल तालिका है। पिछली बिक्री तालिका से नई चाइल्ड टेबल भी 1NF, 2NF और 3NF के अनुरूप है। विदेशी कुंजी और उसके आश्रितों के साथ चाइल्ड टेबल का नाम ग्राहक है। यदि कोई उपयुक्त नाम नहीं मिला, तो विश्लेषण में कुछ गलत हो गया है। 3NF में नई बिक्री तालिका है:

3NF में अंतिम बिक्री तालिका

3NF में इस तालिका में पंक्तियों की संख्या उतनी ही है जितनी 2NF में लेकिन कम स्तंभों के साथ।

3NF में इस अंतिम बिक्री तालिका के लिए तालिका अंकन है:

बिक्री (बिक्री आईडी, बिक्री की तारीख, ग्राहक आईडी, कर्मचारी आईडी)

बिक्री आईडी एकल रेखांकन वाली प्राथमिक कुंजी है। ग्राहक आईडी डैश अंडरलाइन के साथ एक विदेशी कुंजी है। कर्मचारी आईडी डैश अंडरलाइन के साथ एक विदेशी कुंजी भी है। ध्यान दें कि 2NF में बिक्री तालिका में कर्मचारी की स्थिति ग्राहक की स्थिति के समान है। दूसरी तालिका बनाने के लिए कर्मचारी आईडी और उसके स्वयं के आश्रितों को हटाना होगा; कर्मचारी आईडी की एक प्रति बनी हुई है।

नोट: बिक्री आईडी, ग्राहक आईडी और कर्मचारी आईडी संयुक्त कुंजी नहीं बनाते हैं। बिक्री आईडी ग्राहक आईडी और कर्मचारी आईडी पर निर्भर है।

सेलआईडी और कस्टमरआईडी के बीच का संबंध कई-से-एक है।

3NF में ग्राहक तालिका

इस तालिका में 2NF बिक्री तालिका में 9 पंक्तियों के बजाय तीन पंक्तियाँ हैं। इस तालिका में, CustomerID प्राथमिक कुंजी है। यह बिक्री तालिका में विदेशी कुंजी के समान है, लेकिन दोहराव के बिना। बिक्री तालिका में विदेशी कुंजी और ग्राहक तालिका में प्राथमिक कुंजी दोनों तालिकाओं को लिंक करती है।

1NF का उल्लंघन न करने के लिए ग्राहक तालिका में दोहराई गई पंक्तियों को हटा दिया गया है।

जैसा कि पाठक देख सकते हैं, 3NF में टेबल डालने से बार-बार होने वाली पंक्तियों (अतिरेक) की समस्या भी हल हो जाएगी।

ग्राहक तालिका के लिए तालिका संकेतन है:

ग्राहक (ग्राहक आईडी, ग्राहक नाम, फोन, पता, शहर, क्षेत्र, डाक कोड, देश)

उत्पाद तालिका पर दोबारा गौर किया

अंकन के रूप में ऊपर दी गई उत्पाद तालिका है:

उत्पाद (उत्पाद आईडी, श्रेणी आईडी, आपूर्तिकर्ता आईडी, उत्पाद का नाम, इकाई मूल्य, मात्रा इनस्टॉक, रीऑर्डर लेवल)

यहां प्राथमिक कुंजी उत्पाद आईडी है। श्रेणी आईडी और आपूर्तिकर्ता आईडी विदेशी कुंजी हैं। ग्राहक तालिका के समान, एक श्रेणी तालिका है, जहां श्रेणी आईडी प्राथमिक कुंजी है, और एक आपूर्तिकर्ता तालिका है, जहां आपूर्तिकर्ता आईडी प्राथमिक कुंजी है।

यदि UnitPrice, QuantityInStock, और reorderLevel के लिए कक्षों के मान स्थिर रहेंगे, तो उत्पाद तालिका, जैसा कि है, वास्तव में 3NF में है। यदि ये मान बदल रहे होंगे, तो उत्पाद तालिका, जैसा है, 2NF में है। ट्यूटोरियल श्रृंखला के इस भाग में, यह माना जाता है कि वे मान समय के साथ स्थिर रहते हैं।

सभी टेबल

सभी टेबल अब 3NF में हैं। उन्हें इस प्रकार दिखाया गया है:

कर्मचारी (कर्मचारी आईडी, नाम, फोन, पता, शहर, क्षेत्र, डाक कोड, देश, जन्मतिथि, किराया तिथि, जारी तिथि)

आपूर्तिकर्ता (आपूर्तिकर्ता आईडी, नाम, फोन, पता, शहर, क्षेत्र, डाक कोड, देश)

उत्पाद (उत्पाद आईडी, श्रेणी आईडी, आपूर्तिकर्ता आईडी, उत्पाद का नाम, इकाई मूल्य, मात्रा इनस्टॉक, रीऑर्डर लेवल)
श्रेणियाँ (श्रेणी आईडी, श्रेणीनाम, विवरण)

बिक्री (बिक्री आईडी, बिक्री की तारीख, ग्राहक आईडी, कर्मचारी आईडी)
बिक्री विवरण (बिक्री आईडी, उत्पाद आईडी, संख्या बेची गई, बिक्री मूल्य)
ग्राहक (ग्राहक आईडी, ग्राहक नाम, फोन, पता, शहर, क्षेत्र, डाक कोड, देश)

आदेश (आदेश आईडी, दिनांक बेचा, आपूर्तिकर्ता आईडी, कर्मचारी आईडी)
ऑर्डर विवरण (ऑर्डर आईडी, उत्पाद आईडी, नंबर खरीदा, लागत मूल्य)

अतिरेक और लेखा समस्याओं (डालने, हटाने और अद्यतन करने से विसंगतियों) को रोकने के लिए नौसिखियों द्वारा उत्पादित सिर्फ एक तालिका से नौ पेशेवर तालिकाओं का उत्पादन किया गया है। नौसिखियों की मेज अकेले वित्तीय नुकसान का कारण बनेगी।

स्टाफ का परीक्षण

इस बिंदु पर, प्रोपराइटर सहित सभी कर्मचारियों को 1NF, 2NF और 3NF को समझना चाहिए था। हालांकि, उनका परीक्षण किया जाना है। ये सभी मालिक सहित अलग-अलग जगह बैठकर परीक्षा देंगे। एक प्रश्न वाली परीक्षा में एक घंटे का समय लगेगा, और यह इस प्रकार है:

प्रश्न: 1NF, 2NF और 3NF के नियमों का प्रयोग करके सिद्ध कीजिए कि उपरोक्त सभी नौ सारणी पहले से ही फर्स्ट नॉर्मल फॉर्म, सेकेंड नॉर्मल फॉर्म और थर्ड नॉर्मल फॉर्म में हैं। ग्राहकों और आपूर्तिकर्ताओं को वास्तविक संस्था होने की आवश्यकता नहीं है। टेबल के लिए डेटा को टेबल नोटेशन का बैक अप लेना चाहिए।

जब वे परीक्षण पूरा कर रहे हैं, तो आप, डेटाबेस डेवलपर के रूप में, एक घंटे के बाद लौटने के लिए, एक स्नैक और एक बियर लेने के लिए बाहर जाते हैं।

निकट और सुदूर भविष्य

जबकि आप, डेटाबेस डेवलपर, बाहर हैं, आप यह भी विचार करते हैं कि यदि वे सभी परीक्षा उत्तीर्ण करते हैं तो उन्हें क्या सलाह दी जाए।

इसके अलावा, जब आप उन्हें प्रशिक्षित कर रहे थे, और अब जब वे परीक्षा दे रहे हैं, तो ग्राहक बिना सेवा के आ रहे हैं और जा रहे हैं। यह व्यवसाय के लिए अच्छा नहीं है, और आप, डेटाबेस डेवलपर, यह जानते हैं। कुछ ग्राहक प्रतिस्पर्धी दुकानों पर जा सकते हैं और कभी वापस नहीं आ सकते।

आप, डेटाबेस डेवलपर, 30 वर्ष के हैं। आपके मित्र के रूप में मालिक भी 30 वर्ष का है। क्लर्क (कर्मचारी) 18 से 24 वर्ष की आयु के बीच हैं। मालिक के लिए काम करने के लिए आवश्यक सभी गुण थे: स्वस्थ होना, पढ़ने और लिखने में सक्षम होना, जोड़ने, घटाने, गुणा करने और विभाजित करने में सक्षम होना , और कंप्यूटर और इंटरनेट का उपयोग करने में सक्षम होने के लिए।

जब कोई तालिका 3NF में होती है, तो डेटाबेस से अधिकांश भेद्यताएँ हटा दी जाती हैं। कई व्यावसायिक डेटाबेस 3NF से आगे नहीं जाते हैं, और फर्म या कंपनियां सहज हैं।

इसलिए, यदि वे सभी परीक्षा पास कर लेते हैं, तो आप क्लर्कों को जाने और काम करना जारी रखने के लिए कहेंगे। आप उन्हें यह भी सलाह देंगे कि वे अपनी तनख्वाह का कुछ हिस्सा बचाएं ताकि वे अपनी सुविधा की दुकानों के मालिक बन सकें। आप कल केवल मालिक को 4NF और 5NF में प्रशिक्षित करना जारी रखेंगे। 4NF और 5NF के ज्ञान के साथ, सभी ज्ञात भेद्यताएँ हटा दी जाती हैं।

मूल्यांकन

एक घंटे के बाद, आप, डेटाबेस डेवलपर, वापस आएँ। आप उनकी लिपियों को चिह्नित करें। एक बेहतरीन खबर! प्रोपराइटर सहित उन सभी के पास 100% है। हुर्रे! यह बेहतरीन है!

तो आप सबको मुबारक हो, टीचर को और स्टूडेन्ट को।

निष्कर्ष निकालने के अलावा इस ट्यूटोरियल में करने के लिए कुछ भी नहीं बचा है।

निष्कर्ष

एक तालिका प्रथम सामान्य रूप में है, यदि यह निम्नलिखित में से किसी भी नियम का उल्लंघन नहीं करती है:

  1. किसी टेबल के सभी कॉलम में यूनीक हेडर नाम होने चाहिए।
  2. प्रत्येक सेल में केवल एक मान होना चाहिए।
  3. कॉलम में संग्रहीत मान समान प्रकार के होने चाहिए।
  4. पंक्तियाँ अलग होनी चाहिए।
  5. स्तंभों या पंक्तियों का क्रम मायने नहीं रखता।

एक तालिका दूसरे सामान्य रूप में है, यदि यह निम्न में से किसी भी नियम का उल्लंघन नहीं करती है:

  1. टेबल पहले से ही फर्स्ट नॉर्मल फॉर्म में होनी चाहिए।
  2. आंशिक निर्भरता नहीं होनी चाहिए।

एक तालिका तीसरे सामान्य रूप में है, यदि वह निम्नलिखित में से किसी भी नियम का उल्लंघन नहीं करती है:

  1. यह पहले से ही दूसरे सामान्य रूप में होना चाहिए।
  2. और इसमें सकर्मक निर्भरता नहीं होनी चाहिए।

आप, डेटाबेस डेवलपर, क्लर्कों को बताएं कि उन्होंने काफी कुछ सीख लिया है। आप सलाह देते हैं और उन्हें काम पर लौटने और डिफ़ॉल्ट रूप से अपने स्टेशनों पर रहने के लिए कहते हैं।

आप 4NF और 5NF पर प्रशिक्षण के लिए कल उनके कार्यालय में होने के लिए केवल प्रोप्राइटर के साथ एक नियुक्ति निर्धारित करते हैं।