रिलेशनल मॉडल लॉजिक डेटा मॉडल में सबसे लोकप्रिय है, और यह SQL डेटाबेस पर आधारित है।
रिलेशनल मॉडल दो सरल अवधारणाओं पर आधारित है:
- टेबल
- संबंध
संबंधपरक मॉडल 1969 का है और एक अंग्रेजी कंप्यूटर वैज्ञानिक एडगर एफ. कॉड का काम है। हालांकि कंप्यूटर प्रोग्रामर के रूप में हम नई चमकदार चीजों को उत्सुकता से देखने के आदी हैं, एक ऐसी तकनीक जो 50 वर्षों तक कंप्यूटर के बारे में हर चीज में केंद्रीय हो सकती है, निश्चित रूप से अध्ययन के लायक है।
तथ्य यह है कि मॉडल तालिकाओं पर आधारित है, यह उपयोग करने के लिए बहुत सहज बनाता है, क्योंकि हम चीजों को व्यवस्थित करने के लिए तालिकाओं का उपयोग करने के आदी हैं। उदाहरण के लिए, एक्सेल स्प्रेडशीट के बारे में सोचें।
SQL-आधारित डेटाबेस, जैसे PostgreSQL, Oracle, MySQL, SQLite और MS SQL सर्वर, और कई अन्य के साथ, ER मॉडल का उपयोग करके विश्लेषण किए गए डेटा को रिलेशनल मॉडल का उपयोग करके मॉडल किया जा सकता है और लगभग तुरंत SQL डेटाबेस प्रारूप में परिवर्तित किया जा सकता है, जो कर सकता है रिलेशनल मॉडल का वास्तविक दुनिया में कार्यान्वयन माना जा सकता है, लेकिन हम इसके बारे में अन्य पोस्ट में बात करेंगे।
इस पोस्ट में मैं उस सिद्धांत और अवधारणाओं के बारे में बात करना चाहता हूं जो संबंधपरक मॉडल पर आधारित है, गणितीय शब्दों में व्यक्त नहीं किया गया है, लेकिन व्यवहार में इसका क्या अर्थ है।
<ब्लॉकक्वॉट>यदि आप एक छात्र हैं, तो आप पा सकते हैं कि जो मैंने यहाँ लिखा है वह वह नहीं है जो आपकी पाठ्यपुस्तक पर लिखा गया है, लेकिन हो सकता है कि आप अपनी शिक्षण सामग्री में व्यक्त की गई अधिक औपचारिक अवधारणाओं को समझने के लिए इसे अधिक आसानी से पढ़ सकें।
टेबल्स
एक संबंधपरक मॉडल में, एक तालिका वस्तुओं का एक संग्रह है।
यह पंक्तियों और स्तंभों में व्यवस्थित है:
नाम | <थ>आयु|
---|---|
Flavio | 36 |
रोजर | 7 |
सिड | 6 |
टुपल्स
तालिका में प्रत्येक प्रविष्टि को टुपल . कहा जाता है . आप रिकॉर्ड . शब्दों का भी उपयोग कर सकते हैं या पंक्ति ।
एक टपल तालिका की एक पंक्ति का प्रतिनिधित्व करता है, जैसे:
Flavio | 36 |
विशेषताएं
एक विशेषता टपल में एक एकल आइटम है।
इस उदाहरण में:
Flavio | 36 |
"फ्लेवियो" एक विशेषता है। 36 एक और विशेषता है।
टुपल्स अद्वितीय होते हैं
तालिका में प्रत्येक टपल अद्वितीय है।
रिलेशनल मॉडल में, हमारे पास डुप्लिकेट डेटा नहीं हो सकता है, जिसका अर्थ है कि तालिका की प्रत्येक पंक्ति कम से कम एक विशेषता में भिन्न होनी चाहिए।
संबंध कुंजी
जो चीज सुनिश्चित करती है कि टपल अद्वितीय है वह है रिलेशन कुंजी ।
कुंजी एक विशेषता है जिसे विशिष्ट रूप से पहचाना जाना चाहिए एक टपल।
यदि संबंध कुंजी विशेषताओं का एक समूह है, तो यह गैर-अनावश्यक . होना चाहिए . इसका मतलब यह है कि अगर हम कुंजी की किसी एक विशेषता को हटा देते हैं, तो कुंजी इसकी विशिष्टता की गारंटी नहीं दे सकती है।
यदि एक से अधिक कुंजियाँ निर्धारित की जा सकती हैं, तो उन कुंजियों में से एक की पहचान प्राथमिक कुंजी . के रूप में की जाएगी ।
कुंजी अखंडता बाधा
तालिका में किसी भी टपल की वे मुख्य विशेषताएँ कभी भी रिक्त नहीं होनी चाहिए , और कभी नहीं दोहराना चाहिए ।
एक कुंजी को देखते हुए, हमें अस्पष्टता के बिना एक विशिष्ट टपल/पंक्ति को इंगित करने में सक्षम होना चाहिए।
डोमेन बाधाएं
प्रत्येक विशेषता के नियम होते हैं कि यह किस मूल्य को धारण कर सकता है ।
उदाहरण के लिए, यदि हम संख्याओं को संग्रहीत करने का निर्णय लेते हैं, तो हम स्ट्रिंग्स को संग्रहीत नहीं कर सकते। और हो सकता है कि हम नामों के लिए स्ट्रिंग्स को 10 वर्णों से अधिक समय तक संग्रहीत न करने का निर्णय लें।
हम इसे टाइप . भी कह सकते हैं ।
संदर्भात्मक अखंडता बाधा
यदि किसी तालिका में द्वितीयक तालिका का संदर्भ है, या उसी तालिका में अन्य टुपल्स हैं, तो हमें उन नियमों का पालन करना चाहिए जो संदर्भ को टूटने से रोकते हैं।
विशेष रूप से, हमें निम्न द्वारा संदर्भ को तोड़ने से बचना चाहिए:
- अन्य तालिका में हमारे द्वारा इंगित रिकॉर्ड की प्राथमिक कुंजी को हटाने या संपादित करने से बचना।
- दूसरी तालिका में इंगित करने के लिए एक गैर-मौजूदा कुंजी के साथ एक नया रिकॉर्ड डालने से बचें।
- हमारे द्वारा इंगित रिकॉर्ड की कुंजी को बदलने से बचें, यह सुनिश्चित किए बिना कि नई कुंजी दूसरी तालिका में मौजूद है।
एक DBMS (डेटा बेस मैनेजमेंट सिस्टम) संदर्भात्मक अखंडता को लागू करने में हमारी मदद करने के उपायों को लागू करेगा।