"इकाई-संबंध" के संदर्भ में एक डेटाबेस मॉडल डिजाइन करना। डेटाबेस निकाय और उनकी विशेषताएँ डेटाबेस में एक इकाई क्या है? इसके उदाहरण

पदनाम.

मूल सार (गुठली) एक स्वतंत्र इकाई है (इसे नीचे और अधिक विस्तार से परिभाषित किया जाएगा)।

पहले विचार किए गए उदाहरणों में, छड़ें "छात्र", "अपार्टमेंट", "पुरुष", "डॉक्टर", "विवाह" (उदाहरण 2.2 से) और अन्य हैं, जिनके नाम आयतों में रखे गए हैं।

सहयोगी इकाई (संगठन) दो या अधिक संस्थाओं या इकाई उदाहरणों के बीच एक "अनेक-से-अनेक" ("-से-अनेक", आदि) संबंध है (उदाहरण के लिए 2.4)। संघों को पूर्ण संस्थाओं के रूप में माना जाता है:

वे अन्य संघों और पदनामों में उसी तरह भाग ले सकते हैं जैसे मूल संस्थाएं;

गुण हो सकते हैं, अर्थात्। न केवल संबंधों को इंगित करने के लिए आवश्यक प्रमुख विशेषताओं का एक सेट है, बल्कि कई अन्य गुण भी हैं जो रिश्ते की विशेषता रखते हैं। उदाहरण के लिए, उदाहरण 2.1 और 2.4 के "विवाह" संघों में प्रमुख विशेषताएं "M_code", "F_Code" और "पति का नंबर", "पत्नी का नंबर", साथ ही साथ योग्यता विशेषताएँ "प्रमाणपत्र संख्या", "पंजीकरण की तिथि" शामिल हैं। "," पंजीकरण का स्थान "," रजिस्ट्री कार्यालय में प्रवेश की संख्या ", आदि।

विशेषता सार (विशेषता) दो संस्थाओं (एक संघ का एक विशेष मामला) के बीच एक-से-एक या एक-से-एक संबंध है। विचाराधीन विषय क्षेत्र के ढांचे में लक्षण वर्णन का एकमात्र उद्देश्य किसी अन्य इकाई का वर्णन करना या उसे स्पष्ट करना है। उनकी आवश्यकता इस तथ्य के कारण उत्पन्न होती है कि वास्तविक दुनिया की संस्थाओं में कभी-कभी बहु-मूल्यवान गुण होते हैं। एक पति की कई पत्नियां हो सकती हैं (उदाहरण 2.3), एक किताब में पुनर्मुद्रण की कई विशेषताएं हैं (संशोधित, पूरक, संशोधित, ...), आदि।

एक विशेषता का अस्तित्व पूरी तरह से विशेषता वाली इकाई पर निर्भर करता है: यदि उनके पति की मृत्यु हो जाती है तो महिलाओं को पत्नियों के रूप में उनकी स्थिति से वंचित कर दिया जाता है।

विशेषताओं का वर्णन करने के लिए, एक नए एनआईएम प्रस्ताव का उपयोग किया जाता है, जो सामान्य स्थिति में होता है:

विशेषता (विशेषता 1, विशेषता 2, ...) (विशेषता वाली संस्थाओं की सूची)।

हम विशेषताओं का प्रतिनिधित्व करने के लिए एक समलम्बाकार पेश करके ईआर-आरेखों की भाषा का भी विस्तार करेंगे (चित्र 2.2)।

चावल। 2.2. विस्तारित ईआर आरेख भाषा के तत्व

नामित करने वाली इकाईया पद- यह दो संस्थाओं के बीच "अनेक-से-एक" या "एक-से-एक" रूप का संबंध है और इस विशेषता से भिन्न है कि यह निर्दिष्ट इकाई पर निर्भर नहीं करता है।

एक संगठन के विभिन्न विभागों में कर्मचारियों के नामांकन से संबंधित एक उदाहरण पर विचार करें।

सख्त नियमों के अभाव में (एक कर्मचारी को एक साथ कई विभागों में नामांकित किया जा सकता है या किसी भी विभाग में नामांकित नहीं किया जा सकता है), नामांकन संघ के साथ विवरण बनाना आवश्यक है:

विभाग (विभाग संख्या, विभाग का नाम, ...) कर्मचारी (कार्मिक संख्या, उपनाम, ...) नामांकन [विभाग एम, कर्मचारी एन] (विभाग संख्या, कार्मिक संख्या, नामांकन की तिथि)।

हालाँकि, बशर्ते कि प्रत्येक कर्मचारी को किसी एक विभाग में नामांकित होना चाहिए, आप पदनाम के साथ एक विवरण बना सकते हैं कर्मचारी:

विभाग (विभाग संख्या, विभाग का नाम, ...) कर्मचारी (कार्मिक संख्या, उपनाम, ..., विभाग संख्या, नामांकन की तिथि) [विभाग]

इस उदाहरण में, कर्मचारियों का एक स्वतंत्र अस्तित्व होता है (यदि कोई विभाग हटा दिया जाता है, तो इसका पालन नहीं होता है कि उस विभाग के कर्मचारियों को भी हटा दिया जाना चाहिए)। इसलिए, वे विभागों की विशेषता नहीं हो सकते हैं और उन्हें पदनाम कहा जाता है।

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

पदनाम का विवरण बाहरी रूप से केवल विशेषता के विवरण से भिन्न होता है, जिसमें नामित संस्थाएं घुंघराले ब्रेसिज़ में नहीं, बल्कि वर्ग कोष्ठक में संलग्न होती हैं:

पदनाम (विशेषता 1, विशेषता 2, ...) [नियुक्त संस्थाओं की सूची]।

एक नियम के रूप में, पदनामों को वैध संस्थाओं के रूप में नहीं माना जाता है, हालांकि इससे कोई त्रुटि नहीं होगी।

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

आइए अब हम मूल इकाई को एक ऐसी इकाई के रूप में फिर से परिभाषित करें जो न तो एक संघ है, न ही एक पदनाम है, न ही एक विशेषता है। ऐसी संस्थाओं का एक स्वतंत्र अस्तित्व होता है, हालांकि वे अन्य संस्थाओं को निरूपित कर सकते हैं, उदाहरण के लिए, कर्मचारी विभागों को निरूपित करते हैं।

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

चावल। 2.3. एक पाक नुस्खा का एक उदाहरण

निर्दिष्ट उपयोगकर्ताओं की सहायता से, डिज़ाइन किए गए आधार की निम्नलिखित वस्तुओं और विशेषताओं की पहचान की गई है:

  1. व्यंजन जिनके विवरण के लिए उनके पाक व्यंजनों में शामिल डेटा की आवश्यकता होती है: डिश नंबर (उदाहरण के लिए, एक रेसिपी बुक से), डिश का नाम, डिश का प्रकार (एपेटाइज़र, सूप, गर्म, आदि), रेसिपी (खाना पकाने की तकनीक), आउटपुट (भाग वजन) ), डिश में शामिल प्रत्येक उत्पाद का नाम, कैलोरी सामग्री और वजन।
  2. उत्पादों के प्रत्येक आपूर्तिकर्ता के लिए: नाम, पता, आपूर्ति किए गए उत्पाद का नाम, डिलीवरी की तारीख और डिलीवरी के समय कीमत।
  3. दैनिक भोजन की खपत (खपत): पकवान, सर्विंग्स की संख्या, तिथि।

वस्तुओं का विश्लेषण आपको हाइलाइट करने की अनुमति देता है:

  • पकवान, भोजन और शहरों की छड़ें;
  • संघों की संरचना (व्यंजनों को उत्पादों से जोड़ती है) और

वितरण (उत्पादों के साथ आपूर्तिकर्ताओं को जोड़ता है);

  • पदनाम आपूर्तिकर्ता;
  • विशेषताएं व्यंजनों और खपत।

मॉडल का ईआर आरेख अंजीर में दिखाया गया है। 2.4. और YIM भाषा में मॉडल का निम्न रूप है:

व्यंजन (बीएल, डिश, प्रकार) उत्पाद (पीआर, उत्पाद, कैलोरी सामग्री) आपूर्तिकर्ता (पीओएस, शहर, आपूर्तिकर्ता) [शहर] संरचना [व्यंजन एम, उत्पाद एन] (बीएल, पीआर, वजन (जी)) आपूर्ति [आपूर्तिकर्ता एम , उत्पाद एन] (पीओएस, पीआर, दिनांक_पी, मूल्य, वजन (किलो)) शहर (शहर, देश) व्यंजनों (बीएल, पकाने की विधि) (व्यंजन) खपत (बीएल, दिनांक_आर, सर्विंग्स) (व्यंजन)

इन मॉडलों में, डिश, उत्पाद और आपूर्तिकर्ता नाम हैं, और बीएल, पीआर और पीओएस इन उत्पादों की आपूर्ति करने वाले व्यंजन, उत्पादों और संगठनों के डिजिटल कोड हैं।

चावल। 2.4. "पोषण" डेटाबेस का सूचनात्मक मॉडल

[पीछे] [सामग्री] [आगे]

डेटाबेस: इकाई वर्गीकरण

इस खंड में पृष्ठ

विषय क्षेत्र के शास्त्रीय विचार के आधार पर दस्तावेजी दृष्टिकोण में प्रत्येक दस्तावेज़ की विशेषताओं के आधार पर इकाई प्रकारों का निर्माण शामिल है, ऐसे इकाई प्रकारों (विशेषता संस्थाओं) का एक सामान्य सेट बनाते हैं कि उनका संघ पहले सामान्य में एक संबंध का प्रतिनिधित्व करता है फॉर्म (चित्र। 4.2)।


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

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

तालिका 4.5

इकाई प्रकारों का विवरण

इकाई प्रकार

ध्यान दें

क्रम संख्या

क्रम संख्या

आर्डर की तारीख

आर्डर की तारीख

आइटम नंबर

आइटम नंबर

नाम

उत्पाद की कीमत

उत्पाद की कीमत

कीमत

कीमत

परिकलित:

कीमत

कीमत

परिकलित: 511M (<7>) हुक्म से<1>

प्रतीकात्मक

कीमत

प्रतीकात्मक आदेश मूल्य

सांख्यिक मान को प्रतीकात्मक व्यंजक में परिवर्तित करके बनाया गया

मात्रा

मात्रा



यह विवरण उन विशेषताओं को प्रस्तुत करता है जो डेटाबेस मॉडल के लिए महत्वपूर्ण हैं:

  • डेटा प्रकार - डेटाबेस में प्रस्तुति और प्रसंस्करण के सिद्धांतों के भौतिक कार्यान्वयन के स्तर पर परिभाषित संग्रहीत जानकारी के प्रकार के डेटाबेस मॉडल के संदर्भ में विवरण;
  • आयाम एक विशेषता है जिसका उपयोग कुछ डेटा प्रकारों के लिए वर्णों (बाइट्स) की संख्या निर्दिष्ट करने के लिए किया जाता है जिनका उपयोग संबंधित मान को संग्रहीत करते समय किया जाना चाहिए।

प्रस्तुत तालिका में संस्थाओं के प्रकारों का वर्णन करते हुए, कुछ डेटा प्रकारों के लिए "आयाम" कॉलम में घुंघराले ब्रेसिज़ में संलग्न एक संख्यात्मक मान होता है। यह इस कारण से किया जाता है कि डेटाबेस में पूर्णांक, तार्किक डेटा, साथ ही दिनांक और समय को मानक प्रस्तुति तंत्र द्वारा दर्शाया जाता है, और बाइट्स में आकार हमेशा इस प्रकार के डेटा को संग्रहीत करने के लिए जाना जाता है।

संख्यात्मक डेटा प्रकार और उनके समकक्ष बूलियन डेटा प्रकारों का हमेशा एक निश्चित आयाम होता है:

  • बूलियन, लॉजिकल, टिनिलंट, बिट - बूलियन, लॉजिकल डेटा प्रकार जिसमें "ट्रू" और "गलत" मान होते हैं, जो एक छोटे पूर्णांक प्रकार (टिनिलंट) या बिट (बिट) के समान होते हैं जिनकी न्यूनतम लंबाई 1 बाइट (1 बिट) होती है। यदि बिट प्रकार के समान) और मान "O" या "1";
  • बिट एक 1-बिट पूर्णांक डेटा प्रकार है जो "O" या "1" मानों का प्रतिनिधित्व करता है;
  • Tinylnt एक 1-बाइट पूर्णांक डेटा प्रकार है;
  • Smalllnt एक 2-बाइट पूर्णांक डेटा प्रकार है;
  • पूर्णांक - 4-बाइट पूर्णांक डेटा प्रकार;
  • Biglnt, Long - बड़े आकार के पूर्णांक प्रकार (8 बाइट्स);
  • दिनांक - दिनांक डेटा प्रकार, एक वर्ण संस्करण में दर्शाया गया है, जिसमें 8 वर्ण (बाइट्स) के आयाम हैं;
  • समय एक समय डेटा प्रकार है, जिसे वर्ण संस्करण में 8 वर्णों (बाइट्स) की लंबाई के साथ दर्शाया जाता है।

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

टेक्स्ट, सीएलओबी - एक टेक्स्ट डेटा प्रकार जो एक विशेष तरीके से संग्रहीत बड़ी टेक्स्ट जानकारी का प्रतिनिधित्व करता है, और डेटाबेस तालिका में पहले वर्णों के एक सेट द्वारा दिखाया जाता है, जिसकी संख्या इस प्रकार की विशेषता का आयाम है;

  • - चरित्र एक स्ट्रिंग डेटा प्रकार है जो एक आयाम के रूप में निर्दिष्ट वर्णों की संख्या को ठीक से संग्रहीत करता है, स्ट्रिंग के अंत में लापता वर्णों को रिक्त स्थान से भरता है;
  • - वर्चर एक चर-लंबाई वाला स्ट्रिंग डेटा प्रकार है जिसके लिए आयाम निर्धारित करता है कि संग्रहीत स्ट्रिंग में अधिकतम वर्णों की संख्या हो सकती है।

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

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

डेटा सूचना मॉडल को शब्दार्थ का प्रतिनिधित्व करने के लिए डिज़ाइन किया गया है विषय क्षेत्रविवरण के व्यक्तिपरक साधनों के संदर्भ में - संस्थाएं, गुण, इकाई पहचानकर्ता, सुपरटेप, उपप्रकार, आदि।

डोमेन सूचना मॉडलडेटाबेस में निम्नलिखित बुनियादी निर्माण शामिल हैं:

  • इकाई - संबंध आरेख;
  • संस्थाओं की परिभाषा;
  • अनोखा इकाई पहचानकर्ता ;
  • परिभाषाएं इकाई गुण ;
  • संस्थाओं के बीच संबंध;
  • सुपरटाइप और उपप्रकार।

ध्यान! डोमेन डेटा सूचना मॉडल के तत्व समस्या को हल करने के लिए इनपुट डेटा हैं डेटाबेस डिजाइन- निर्माण तार्किक डेटा मॉडल.

निकाय, विशेषताएँ और निकाय पहचानकर्ता (कुंजी), विशेषता डोमेन

सूचना मॉडल का विषय विषय क्षेत्र के ढांचे के भीतर वास्तविक दुनिया की वस्तुओं या घटनाओं का सार है, जिसके परिणामस्वरूप विषय क्षेत्र की संस्थाओं की पहचान की जाती है। एक नियम के रूप में, उन्हें एक प्राकृतिक भाषा संज्ञा द्वारा दर्शाया जाता है।

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

ध्यान! जब किसी निकाय का प्रतिनिधित्व किया जाता है, तो केवल उसके गुण डेटाबेस में संग्रहीत होते हैं।

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

कुछ संस्थाओं के प्राकृतिक पहचानकर्ता होते हैं। उदाहरण के लिए, किसी चालान के लिए प्राकृतिक पहचानकर्ता उसकी संख्या है। इकाई पहचानकर्तामिश्रित हो सकता है - कई विशेषताओं से बना है और परमाणु - इकाई की एक विशेषता से बना है।

संस्थाओं की पहचान विश्लेषकों द्वारा की जाती है। हालाँकि, अक्सर उनका निर्णय अंतिम नहीं होता है! डेटाबेस डिज़ाइनर का काम यह सुनिश्चित करना है कि बचत करते समय इकाई उदाहरणडेटाबेस में, इसके प्रत्येक नए उदाहरण के लिए एक विशिष्ट पहचानकर्ता की उपस्थिति। इकाई का विशिष्ट पहचानकर्ता- यह इकाई विशेषता, आपको एक इकाई को दूसरे से अलग करने की अनुमति देता है। यदि किसी इकाई में कई विशिष्ट पहचानकर्ता हैं, तथाकथित संभव कुंजीतब डिज़ाइनर को निकाय की प्राथमिक कुंजी चुननी होगी.

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

डिजाइनर द्वारा सूचना मॉडल के अध्ययन में एक महत्वपूर्ण बिंदु बहुमूल्यवान का चयन है इकाई गुण... ऐसा इसलिए है क्योंकि रिलेशनल डेटाबेस मॉडल बहुमूल्यवान विशेषताओं का समर्थन नहीं करता है और इसे बाद के डिज़ाइन चरणों में हल किया जाना चाहिए।

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

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

रिश्ते, कनेक्शन

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

ध्यान! एक संबंधपरक डेटाबेस में, संबंध केवल विदेशी कुंजी अखंडता बाधाओं के माध्यम से लागू किए जाते हैं। इसलिए, डेटाबेस डिज़ाइनर को यह सुनिश्चित करना चाहिए कि संस्थाओं के बीच संबंध अच्छी तरह से निर्दिष्ट विशेषताओं के माध्यम से है जो एक अद्वितीय संबंध कुंजी को परिभाषित करेगा। निकाय कुंजियों का चुनाव सबसे महत्वपूर्ण डिज़ाइन निर्णयों में से एक है जो डिज़ाइनर को तब करना पड़ता है जब से आगे बढ़ते हैं डोमेन सूचना मॉडलडेटाबेस के तार्किक मॉडल के लिए।

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

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

दृष्टिकोण से रिश्ते अलग करते हैंकमजोर (कमजोर) संस्थाएं। कमजोर इकाइयाँ वे इकाइयाँ हैं जो डेटाबेस में तब तक मौजूद नहीं हो सकतीं जब तक कि किसी अन्य इकाई का संबद्ध उदाहरण न हो। ऐसी इकाई का एक उदाहरण एक ऐसा आदेश है जो ग्राहक के बिना मौजूद नहीं हो सकता। कमजोर संस्थाओं के पास एक अनिवार्य वर्ग है, और ऐसी इकाई के कनेक्शन की डिग्री शून्य नहीं हो सकती है। आदेश-ग्राहक संबंध आवश्यक है।

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

उपप्रकार और सुपरटाइप

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

कभी-कभी परिणामी श्रेणियों के लिए सामान्य गुण मूल इकाई से निकाले जाते हैं, और इस प्रकार इकाई निकाली जाती है, जो एक सुपरटाइप बन जाती है। मूल इकाई का नाम आमतौर पर चयनित सुपरटाइप इकाई के पीछे छोड़ दिया जाता है, हालांकि इसका अर्थ अर्थ बदल जाता है।

उपप्रकारों के साथ एक सुपरटाइप जो इसे उत्पन्न करता है, एक तथाकथित समग्र इकाई का एक उदाहरण है। एक समग्र इकाई एक मॉडल का एक तार्किक निर्माण है जो संपूर्ण रूप से संस्थाओं और उनके बीच संबंधों के एक सेट का प्रतिनिधित्व करता है।

उदाहरण। इकाई एक कार को निम्नलिखित उपप्रकारों में विभाजित किया जा सकता है: दो पहिया ड्राइव वाहन, चार पहिया ड्राइव वाहन, और स्विच करने योग्य ड्राइव वाहन।

डेटाबेस डिज़ाइनर के लिए यह जानना ज़रूरी है कि सभी इकाई उदाहरण- सुपरटेप इसके उपप्रकारों में से केवल एक के हैं। मॉडल में उपप्रकारों की उपस्थिति और

"रिलेशनल" शब्द का अर्थ है "रिलेशनशिप-बेस्ड"। एक रिलेशनल डेटाबेस में इकाइयाँ (तालिकाएँ) होती हैं जो एक दूसरे के संबंध में होती हैं। यह नाम अंग्रेजी शब्द रिलेशन-रिलेशन से आया है।
डेटाबेस डिजाइन में दो मुख्य चरण होते हैं: तार्किक और भौतिक मॉडलिंग।
लॉजिकल मॉडलिंग के दौरान, आप आवश्यकताओं को इकट्ठा करते हैं और एक डेटाबेस मॉडल विकसित करते हैं जो एक विशिष्ट डीबीएमएस (रिलेशनल डेटाबेस मैनेजमेंट सिस्टम) से स्वतंत्र होता है। यह ऐसा है जैसे आप अपने घर के लिए खाका बना रहे थे। आप सब कुछ सोच सकते हैं और आकर्षित कर सकते हैं: जहां रसोईघर, शयनकक्ष, रहने का कमरा होगा। लेकिन यह सब कागज पर और लेआउट में है।
भौतिक मॉडलिंग के दौरान, आप एक मॉडल बनाते हैं जो एक विशिष्ट एप्लिकेशन और डीबीएमएस के लिए अनुकूलित होता है। यह वह मॉडल है जिसे व्यवहार में लागू किया जा रहा है। यदि आप पिछले पैराग्राफ से घर लौटते हैं, तो इस स्तर पर आपको कहीं घर बनाना होगा - लॉग, ईंटें ले जाएं ...

डेटाबेस डिजाइन प्रक्रिया में निम्नलिखित चरण होते हैं:

  • जानकारी का संग्रह;
  • संस्थाओं की परिभाषा;
  • प्रत्येक इकाई के लिए विशेषताओं को परिभाषित करना;
  • संस्थाओं के बीच संबंधों को परिभाषित करना;
  • सामान्यीकरण;
  • एक भौतिक मॉडल में परिवर्तन;
  • डेटाबेस निर्माण।

पहले 5 चरण तार्किक डिजाइन चरण बनाते हैं, और अन्य दो भौतिक मॉडलिंग चरण बनाते हैं।

तार्किक चरण

तार्किक चरण में कई चरण होते हैं। उन सभी को नीचे माना जाता है।

आवश्यकताओं को एकत्रित करना

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

संस्थाओं को परिभाषित करना

इस स्तर पर, आपको उन संस्थाओं को परिभाषित करने की आवश्यकता है जो डेटाबेस बनाएगी।

एक इकाई डेटाबेस में एक वस्तु है जो डेटा संग्रहीत करती है। एक इकाई कुछ मूर्त (घर, व्यक्ति, वस्तु, स्थान) या कुछ सार (बैंकिंग, कंपनी विभाग, बस मार्ग) हो सकती है। भौतिक मॉडल में, एक इकाई को एक तालिका कहा जाता है।

इकाइयाँ विशेषताओं (तालिका कॉलम) और रिकॉर्ड (तालिका में पंक्तियाँ) से बनी होती हैं।

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

किसी भी तालिका में निम्नलिखित विशेषताएं होती हैं:

  • कोई समान रेखाएँ नहीं हैं;
  • तालिका के सभी स्तंभों (विशेषताओं) के अलग-अलग नाम होने चाहिए;
  • एक कॉलम के तत्वों में एक ही प्रकार (स्ट्रिंग, संख्या, दिनांक) होता है;
  • तालिका में पंक्तियों का क्रम मनमाना हो सकता है।

इस स्तर पर, आपको उन सभी श्रेणियों की सूचनाओं (संस्थाओं) की पहचान करने की आवश्यकता है जो डेटाबेस में संग्रहीत की जाएंगी।

गुणों को परिभाषित करना

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


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

चांबियाँ

एक कुंजी विशेषताओं का एक समूह है जो विशिष्ट रूप से एक रिकॉर्ड की पहचान करता है। कुंजी दो वर्गों में विभाजित हैं: सरल और यौगिक।
एक साधारण कुंजी में केवल एक विशेषता होती है। उदाहरण के लिए, डेटाबेस में "देश के नागरिकों के पासपोर्ट" पासपोर्ट नंबर एक साधारण कुंजी होगी: एक ही नंबर वाले दो पासपोर्ट नहीं होते हैं।
एक समग्र कुंजी में कई विशेषताएं होती हैं। उसी डेटाबेस "देश के नागरिकों के पासपोर्ट" में निम्नलिखित विशेषताओं के साथ एक समग्र कुंजी हो सकती है:
उपनाम, नाम, संरक्षक, जन्म तिथि। यह एक उदाहरण है, क्योंकि यह समग्र कुंजी, सिद्धांत रूप में, रिकॉर्ड की विशिष्टता की गारंटी नहीं देती है।
कुंजियाँ भी कई प्रकार की होती हैं, जिनका वर्णन नीचे किया गया है।

संभावित कुंजी

एक संभावित कुंजी विशेषताओं का कोई भी सेट है जो विशिष्ट रूप से तालिका में एक प्रविष्टि की पहचान करती है। संभावित कुंजी सरल या मिश्रित हो सकती है।
प्रत्येक इकाई में कम से कम एक संभावित कुंजी होनी चाहिए, हालाँकि ऐसी कई कुंजियाँ हो सकती हैं। प्राथमिक कुंजी विशेषताओं में से कोई भी NULL नहीं हो सकता है।
एक संभावित कुंजी को सरोगेट कुंजी भी कहा जाता है।

प्राथमिक कुंजी

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

वैकल्पिक कुंजी

किसी भी संभावित गैर-प्राथमिक कुंजी को वैकल्पिक कुंजी कहा जाता है। एक निकाय में अनेक वैकल्पिक कुंजियाँ हो सकती हैं।

विदेशी कुंजी

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

कुंजियाँ तार्किक निर्माण हैं, भौतिक वस्तुएँ नहीं। संबंधपरक डेटाबेस कुंजियों को संग्रहीत करने के लिए तंत्र प्रदान करते हैं।

संस्थाओं के बीच संबंधों को परिभाषित करना

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

एक से एक

पहली इकाई का प्रत्येक रिकॉर्ड दूसरी इकाई के केवल एक रिकॉर्ड से मेल खाता है। और दूसरी इकाई का प्रत्येक रिकॉर्ड पहली इकाई के केवल एक रिकॉर्ड से मेल खाता है। उदाहरण के लिए, दो इकाइयाँ हैं: लोग और जन्म प्रमाण पत्र। और एक व्यक्ति के पास केवल एक ही जन्म प्रमाण पत्र हो सकता है।

कई लोगों के लिए एक

पहली इकाई का प्रत्येक रिकॉर्ड दूसरी इकाई के कई रिकॉर्ड के अनुरूप हो सकता है। हालांकि, दूसरी इकाई का प्रत्येक रिकॉर्ड पहली इकाई के केवल एक रिकॉर्ड से मेल खाता है। उदाहरण के लिए, दो निकाय हैं: ऑर्डर और ऑर्डर आइटम। और एक क्रम में कई आइटम हो सकते हैं।

कई कई

पहली इकाई का प्रत्येक रिकॉर्ड दूसरी इकाई के कई रिकॉर्ड के अनुरूप हो सकता है। हालांकि, दूसरी इकाई का प्रत्येक रिकॉर्ड पहली इकाई के कई रिकॉर्ड के अनुरूप हो सकता है। उदाहरण के लिए, दो निकाय हैं: लेखक और पुस्तक। एक लेखक कई किताबें लिख सकता है। लेकिन एक किताब में कई लेखक हो सकते हैं।
दायित्व की कसौटी के अनुसार, रिश्तों को अनिवार्य और वैकल्पिक में विभाजित किया गया है।

  • एक अनिवार्य संबंध का अर्थ है कि पहली इकाई के प्रत्येक रिकॉर्ड के लिए, दूसरी इकाई में संबद्ध रिकॉर्ड होना चाहिए।
  • एक वैकल्पिक संबंध का अर्थ है कि पहली इकाई के रिकॉर्ड के लिए, दूसरी इकाई में कोई रिकॉर्ड नहीं हो सकता है।

मानकीकरण

सामान्यीकरण एक डेटाबेस से अनावश्यक डेटा को हटाने की प्रक्रिया है। डेटा के प्रत्येक आइटम को डेटाबेस में एक और केवल एक प्रति में संग्रहीत किया जाना चाहिए। सामान्यीकरण के पाँच सामान्य रूप हैं। आमतौर पर, डेटाबेस को तीसरे सामान्य रूप में घटा दिया जाता है।
सामान्यीकरण प्रक्रिया के दौरान, अनावश्यक डेटा को हटाने के लिए कुछ कार्रवाई की जाती है। सामान्यीकरण प्रदर्शन में सुधार करता है, सॉर्टिंग और इंडेक्स बिल्डिंग को गति देता है, प्रति इकाई इंडेक्स की संख्या कम करता है, और इंसर्ट और अपडेट को गति देता है।
एक सामान्यीकृत डेटाबेस आमतौर पर अधिक लचीला होता है। जब आप सामान्यीकृत डेटाबेस में क्वेरी या संग्रहीत डेटा को संशोधित करते हैं, तो आपको आमतौर पर कम परिवर्तन करने पड़ते हैं और परिवर्तन करने के कम परिणाम होते हैं।

पहला सामान्य रूप

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

हाउस इकाई को उसके पहले सामान्य रूप में लाने के लिए, डुप्लिकेट मान समूहों को हटाना आवश्यक है, अर्थात, स्वामी 1-3 विशेषताओं को हटाकर, उन्हें एक अलग इकाई में रखकर। परिणाम (इकाई सदन को पहले सामान्य रूप में घटाया गया):

दूसरा सामान्य रूप

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

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

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

प्रतिबंध

प्रतिबंधवे नियम हैं जिन्हें डेटाबेस प्रबंधन प्रणाली लागू करती है। बाधाएं उन मानों के सेट को परिभाषित करती हैं जिन्हें कॉलम या कॉलम में दर्ज किया जा सकता है।
उदाहरण के लिए, आप नहीं चाहते कि आपके बहुत अच्छे स्टोर में ऑर्डर की राशि 500 ​​रूबल से कम हो। आप बस ऑर्डर राशि कॉलम पर एक सीमा निर्धारित करते हैं।

संग्रहित प्रक्रियाएं

संग्रहीत कार्यविधियाँ पूर्व-संकलित कार्यविधियाँ हैं जो एक डेटाबेस में संग्रहीत होती हैं। संग्रहीत प्रक्रियाओं का उपयोग व्यावसायिक नियमों को परिभाषित करने के लिए किया जा सकता है और अकेले बाधाओं की तुलना में अधिक जटिल गणना कर सकते हैं।
संग्रहीत कार्यविधियों में प्रोग्राम निष्पादन के साथ-साथ डेटाबेस प्रश्नों के लिए तर्क शामिल हो सकते हैं। वे पैरामीटर ले सकते हैं और परिणाम तालिका या एकल मान के रूप में वापस कर सकते हैं।
संग्रहीत प्रक्रियाएं किसी भी कार्यक्रम में नियमित प्रक्रियाओं या कार्यों की तरह होती हैं।

ध्यान दें
संग्रहीत कार्यविधियाँ डेटाबेस में रहती हैं और डेटाबेस सर्वर पर निष्पादित की जाती हैं। वे आम तौर पर SQL कथनों की तुलना में तेज़ होते हैं क्योंकि वे संकलित संग्रहीत होते हैं।

आंकड़ा शुचिता

डेटा को तालिकाओं में व्यवस्थित करके और उनके बीच संबंधों को परिभाषित करके, आप मान सकते हैं कि आपने एक ऐसा मॉडल बनाया है जो व्यावसायिक वातावरण को सही ढंग से दर्शाता है। अब आपको यह सुनिश्चित करने की आवश्यकता है कि डेटाबेस में दर्ज किया गया डेटा मामलों की स्थिति की सही तस्वीर देता है। दूसरे शब्दों में, आपको व्यावसायिक नियमों को लागू करने और डेटाबेस की अखंडता बनाए रखने की आवश्यकता है।
उदाहरण के लिए, आपकी कंपनी पुस्तकें वितरित करती है। आप किसी अज्ञात ग्राहक से ऑर्डर स्वीकार करने की संभावना नहीं रखते हैं, क्योंकि तब आप ऑर्डर देने में भी सक्षम नहीं होंगे। इसलिए व्यापार नियम: ऑर्डर केवल उन ग्राहकों से स्वीकार किए जाते हैं जिनकी जानकारी डेटाबेस में होती है।
संबंधपरक डेटाबेस में डेटा की शुद्धता नियमों के एक सेट द्वारा सुनिश्चित की जाती है। डेटा अखंडता नियम चार श्रेणियों में आते हैं।

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

ट्रिगर्स

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

व्यापार नियम

व्यावसायिक नियम व्यवसाय की आवश्यकताओं को पूरा करने के लिए डेटा पर बाधाओं को परिभाषित करते हैं (जिनके लिए आप डेटाबेस बना रहे हैं)। व्यावसायिक नियमों में एक विशिष्ट कार्य को पूरा करने के लिए आवश्यक चरणों का एक समूह शामिल हो सकता है, या वे केवल जाँच कर सकते हैं कि दर्ज किया गया डेटा सही है। व्यावसायिक नियमों में डेटा अखंडता नियम शामिल हो सकते हैं। अन्य नियमों के विपरीत, उनका मुख्य उद्देश्य व्यवसाय संचालन का सही संचालन सुनिश्चित करना है।
उदाहरण के लिए, "वेरी टफ गाईज" कंपनी में इसे इतना स्वीकार किया जा सकता है कि आधिकारिक जरूरतों के लिए केवल सफेद, नीली और काली कारें ही खरीदी जाती हैं।
तब Entity Service Vehicles निकाय की कार रंग विशेषता के व्यवसाय नियम में कहा जाएगा कि कार केवल सफ़ेद, नीले या काले रंग की हो सकती है.
अधिकांश DBMS साधन प्रदान करते हैं:

  • डिफ़ॉल्ट मान निर्दिष्ट करने के लिए;
  • डेटाबेस में प्रवेश करने से पहले डेटा की जांच करने के लिए;
  • तालिकाओं के बीच संबंध बनाए रखने के लिए;
  • मूल्यों की विशिष्टता सुनिश्चित करने के लिए;
  • संग्रहीत प्रक्रियाओं को सीधे डेटाबेस में संग्रहीत करने के लिए।

इन सभी क्षमताओं का उपयोग डेटाबेस में व्यावसायिक नियमों को लागू करने के लिए किया जा सकता है।

भौतिक मॉडल

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

असमान्यीकरण

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

गुण।

विषय क्षेत्र।

डेटाबेस। परिभाषा।

डीबीएमएस। परिभाषा।

डेटाबेस। परिभाषा।

तीसरा सामान्य रूप। परिभाषा। उदाहरण।

संबंध चर R तीसरे सामान्य रूप में है यदि और केवल यदि निम्नलिखित शर्तें पूरी होती हैं:

· R दूसरे सामान्य रूप में है।

कोई भी गैर-कुंजी आर विशेषता एक संक्रमणीय कार्यात्मक निर्भरता में नहीं है (यानी, निर्भरता किसी अन्य विशेषता के माध्यम से व्यक्त नहीं की जाती है) संभावित कुंजी आर पर।

संबंध R की एक गैर-कुंजी विशेषता एक ऐसी विशेषता है जो किसी भी उम्मीदवार R कुंजी से संबंधित नहीं है।

डेटाबेसएक या एक से अधिक डेटा फाइलें जो बड़ी मात्रा में परस्पर संबंधित सूचनाओं को संग्रहीत करने, बदलने और संसाधित करने के लिए अभिप्रेत हैं, इस तरह से व्यवस्थित की जाती हैं कि इन सामग्रियों को इलेक्ट्रॉनिक कंप्यूटर (कंप्यूटर) का उपयोग करके पाया और संसाधित किया जा सके।

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

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

विषय क्षेत्र- नियंत्रण प्रक्रिया को स्वचालित करने के लिए डेटाबेस बनाने के लिए यह वास्तविक दुनिया का एक हिस्सा है जिसका अध्ययन किया जाना है।

गुणडेटा संरचना की सबसे छोटी इकाई है। डेटाबेस बनाते समय प्रत्येक तत्व को एक अद्वितीय नाम दिया जाता है। इस नाम से, इसे प्रसंस्करण के दौरान संदर्भित किया जाता है।

तत्व- विचाराधीन विषय क्षेत्र में कोई विशिष्ट या अमूर्त वस्तु। संस्थाएं बुनियादी प्रकार की जानकारी होती हैं जो एक डेटाबेस में संग्रहीत होती हैं (एक संबंधपरक डेटाबेस में प्रत्येक इकाई को एक तालिका सौंपी जाती है)।

डीबीएमएस के कार्यों की सूची बनाएं

डीबीएमएस के मुख्य कार्य:

1) बनाए गए डेटाबेस की संरचना, इसके आरंभीकरण और प्रारंभिक लोडिंग का निर्धारण।

2) उपयोगकर्ताओं को डेटा में हेरफेर करने की क्षमता प्रदान करना (आवश्यक डेटा प्राप्त करना, गणना करना, इनपुट / आउटपुट इंटरफ़ेस विकसित करना, विज़ुअलाइज़ेशन)।

3) डेटा की तार्किक और भौतिक स्वतंत्रता सुनिश्चित करना।

4) डेटाबेस की तार्किक अखंडता की सुरक्षा - डेटा की विश्वसनीयता का उल्लंघन तब किया जा सकता है जब वे डेटाबेस में दर्ज किए जाते हैं या डेटा प्रोसेसिंग प्रक्रियाओं के अवैध कार्यों से जो डेटाबेस में गलत डेटा प्राप्त करते हैं और दर्ज करते हैं। डेटा की विश्वसनीयता बढ़ाने के लिए, सिस्टम में तथाकथित अखंडता बाधाओं को घोषित किया जाता है।



5) भौतिक अखंडता की सुरक्षा - डेटाबेस (लेनदेन) को पुनर्स्थापित करने का साधन।

6) डेटाबेस तक पहुँचने के लिए उपयोगकर्ता अधिकारों का प्रबंधन करना।

7) कई उपयोगकर्ताओं के काम का तुल्यकालन।

8) भंडारण वातावरण के संसाधनों का प्रबंधन - डीबीएमएस नए डेटा के लिए स्मृति संसाधनों को आवंटित करता है, मुक्त स्मृति को पुन: आवंटित करता है, बाहरी स्मृति के अनुरोधों की कतार को व्यवस्थित करता है, और इसी तरह।

9) सिस्टम कर्मियों की गतिविधियों के लिए सहायता