विभिन्न डेटाबेस प्रबंधन प्रणालियाँ स्कीमा को परिभाषित करती हैं अपने तरीके से। इससे डेटाबेस डेवलपर्स के लिए यह तय करना मुश्किल हो सकता है कि स्कीमा क्या है - विशेष रूप से विभिन्न डीबीएमएस के बीच स्विच करते समय।
यह लेख तीन प्रमुख डेटाबेस सिस्टम द्वारा उपयोग की जाने वाली परिभाषाएं प्रदान करता है।
MySQL
MySQL दस्तावेज़ीकरण एक वैचारिक और भौतिक दोनों दृष्टिकोण से एक स्कीमा को परिभाषित करता है।
वैचारिक
<ब्लॉकक्वॉट>वैचारिक रूप से, एक स्कीमा परस्पर संबंधित डेटाबेस ऑब्जेक्ट्स का एक सेट है, जैसे टेबल, टेबल कॉलम, कॉलम के डेटा प्रकार, इंडेक्स, विदेशी कुंजी, और इसी तरह। ये ऑब्जेक्ट SQL सिंटैक्स के माध्यम से जुड़े हुए हैं, क्योंकि कॉलम टेबल बनाते हैं, विदेशी कुंजियाँ टेबल और कॉलम को संदर्भित करती हैं, और इसी तरह। आदर्श रूप से, वे एक एकीकृत अनुप्रयोग या लचीले ढांचे के हिस्से के रूप में एक साथ काम करते हुए तार्किक रूप से भी जुड़े हुए हैं। उदाहरण के लिए, सूचना_स्कीमा और performance_schema डेटाबेस अपने नाम में "स्कीमा" का उपयोग उन तालिकाओं और स्तंभों के बीच घनिष्ठ संबंधों पर जोर देने के लिए करते हैं जिनमें वे शामिल हैं।
शारीरिक
फिर यह बताया गया कि, भौतिक दृष्टिकोण से, स्कीमा और डेटाबेस के बीच कोई अंतर नहीं है:
<ब्लॉकक्वॉट>
MySQL में, भौतिक रूप से, एक स्कीमा डेटाबेस . का पर्याय है . आप कीवर्ड को SCHEMA
. से बदल सकते हैं इसके बजाय DATABASE
MySQL SQL सिंटैक्स में, उदाहरण के लिए CREATE SCHEMA
. का उपयोग करके इसके बजाय CREATE DATABASE
।
स्रोत: “MySQL शब्दावली”। MySQL 5.7 संदर्भ मैनुअल। माई एसक्यूएल। 6 जून 2016 को लिया गया।
एसक्यूएल सर्वर
शब्दावली
<ब्लॉकक्वॉट>डेटाबेस स्कीमा
डेटाबेस के टेबल, फ़ील्ड, डेटा प्रकार और प्राथमिक और विदेशी कुंजियों के नाम।
स्रोत: “शब्दावली”। SQL सर्वर 2016 तकनीकी दस्तावेज़ीकरण। माइक्रोसॉफ्ट डेवलपर नेटवर्क। 6 जून 2016 को लिया गया।
SQL सर्वर तकनीकी लेख
डेटाबेस ऑब्जेक्ट स्कीमा के बारे में यह लेख स्पष्ट रूप से एक डेटाबेस उपयोगकर्ता और स्कीमा के बीच का अंतर बताता है (यह इसके विपरीत है कि कैसे Oracle स्कीमा को परिभाषित करता है - नीचे)।
<ब्लॉकक्वॉट>डेटाबेस ऑब्जेक्ट के पृथक्करण, प्रबंधन और स्वामित्व को सुविधाजनक बनाने के लिए स्कीमा एक विशिष्ट नाम स्थान है।
और
<ब्लॉकक्वॉट>डेटाबेस उपयोगकर्ता के स्वामित्व वाली कोई वस्तु अब उस उपयोगकर्ता से जुड़ी नहीं है। ऑब्जेक्ट अब एक स्कीमा से संबंधित है - एक कंटेनर जिसमें कई डेटाबेस ऑब्जेक्ट हो सकते हैं।
और
<ब्लॉकक्वॉट>इस पृथक्करण का अर्थ है कि उपयोगकर्ता डेटाबेस में जोड़े जाने से पहले ऑब्जेक्ट और स्कीमा बनाए जा सकते हैं। इसका मतलब यह भी है कि उपयोगकर्ता को उस उपयोगकर्ता के स्वामित्व वाली वस्तुओं को विशेष रूप से छोड़े बिना छोड़ा जा सकता है।
स्रोत:"एसक्यूएल सर्वर सर्वोत्तम अभ्यास - डेटाबेस ऑब्जेक्ट स्कीमा का कार्यान्वयन"। माइक्रोसॉफ्ट टेकनेट लेख। प्रकाशित:नवंबर 2008। 6 जून 2016 को लिया गया।
Oracle डेटाबेस
Oracle डेटाबेस का स्कीमा सिस्टम अन्य सिस्टम से काफी अलग है। Oracle का स्कीमा डेटाबेस उपयोगकर्ता से बहुत अधिक जुड़ा हुआ है।
<ब्लॉकक्वॉट>एक स्कीमा डेटा, या स्कीमा ऑब्जेक्ट्स की तार्किक संरचनाओं का संग्रह है। एक स्कीमा का स्वामित्व डेटाबेस उपयोगकर्ता के पास होता है और उसका नाम उस उपयोगकर्ता के समान होता है। प्रत्येक उपयोगकर्ता के पास एक ही स्कीमा होता है।
Oracle स्कीमा ऑब्जेक्ट . के बीच अंतर करता है और गैर स्कीमा ऑब्जेक्ट . तो दूसरे शब्दों में, कुछ डेटाबेस ऑब्जेक्ट को स्कीमा में शामिल नहीं किया जा सकता है।
स्कीमा ऑब्जेक्ट
Oracle डेटाबेस में, स्कीमा ऑब्जेक्ट निम्नलिखित शामिल करें:
- क्लस्टर
- बाधाएं
- डेटाबेस लिंक
- डेटाबेस ट्रिगर
- आयाम
- बाहरी प्रक्रिया पुस्तकालय
- सूचकांक-संगठित टेबल
- सूचकांक
- सूचकांक
- जावा कक्षाएं, जावा संसाधन, जावा स्रोत
- भौतिक दृश्य
- भौतिकीकृत दृश्य लॉग
- खनन मॉडल
- ऑब्जेक्ट टेबल
- वस्तु प्रकार
- वस्तु दृश्य
- ऑपरेटर
- पैकेज
- अनुक्रम
- संग्रहीत कार्य, संग्रहीत कार्यविधियाँ
- समानार्थी
- टेबल्स
- दृश्य
गैर स्कीमा ऑब्जेक्ट
Oracle डेटाबेस में, निम्न ऑब्जेक्ट नॉनस्कीमा ऑब्जेक्ट हैं :
- संदर्भ
- निर्देशिका
- संस्करण
- पुनर्स्थापना बिंदु
- भूमिकाएं
- रोलबैक सेगमेंट
- टेबलस्पेस
- उपयोगकर्ता
स्रोत: “डेटाबेस ऑब्जेक्ट”। Oracle डेटाबेस ऑनलाइन दस्तावेज़ीकरण 12c रिलीज़ 1 (12.1)। ओरेकल सहायता केंद्र। 6 जून 2016 को लिया गया।