डेटाबेस डोमेन की एक सरल परिभाषा डेटाबेस में एक कॉलम द्वारा उपयोग किया जाने वाला डेटा प्रकार है। यह डेटा प्रकार एक अंतर्निहित प्रकार (जैसे एक पूर्णांक या एक स्ट्रिंग) या एक कस्टम प्रकार हो सकता है जो डेटा पर बाधाओं को परिभाषित करता है।
डेटा प्रविष्टि और डोमेन
जब आप किसी भी प्रकार के ऑनलाइन रूप में डेटा दर्ज करते हैं, चाहे वह आपका नाम और ईमेल हो या नौकरी का आवेदन, एक डेटाबेस आपके इनपुट को पर्दे के पीछे संग्रहीत करता है। वह डेटाबेस मापदंड के एक सेट के आधार पर आपकी प्रविष्टियों का मूल्यांकन करता है।
उदाहरण के लिए, यदि आप एक ज़िप कोड दर्ज करते हैं, तो डेटाबेस को पांच नंबर (या पांच नंबर के बाद एक हाइफ़न और फिर चार नंबर पूरे यूएस ज़िप कोड के लिए) खोजने की उम्मीद है। यदि आप ज़िप कोड फ़ील्ड में अपना नाम दर्ज करते हैं, तो डेटाबेस आपको एक त्रुटि देता है।
ऐसा इसलिए है क्योंकि डेटाबेस ज़िप कोड फ़ील्ड के लिए परिभाषित डोमेन के विरुद्ध आपकी प्रविष्टि का परीक्षण करता है। डोमेन मूल रूप से एक डेटा प्रकार है जिसमें वैकल्पिक प्रतिबंध शामिल हो सकते हैं।
हर प्रकार का डेटाबेस प्रतिबंधों और नियमों के एक सेट को परिभाषित करने का एक तरीका प्रदान करता है जो स्वीकार्य डेटा को नियंत्रित करता है, भले ही वह इसे डोमेन न कहे। विवरण के लिए अपने डेटाबेस के दस्तावेज़ देखें।
डेटाबेस डोमेन को समझना
डेटाबेस डोमेन को समझने के लिए, आइए डेटाबेस के कुछ अन्य पहलुओं पर विचार करें:
- एक डेटाबेस स्कीमा विशेषताओं के एक सेट को परिभाषित करता है, जिसे कॉलम या फ़ील्ड भी कहा जाता है। "संपर्क जानकारी" नामक तालिका में फर्स्टनाम, लास्टनाम, जॉबटाइटल, स्ट्रीट एड्रेस, शहर, राज्य, ज़िपकोड, फोन नंबर और ईमेल के लिए विशेषताएँ शामिल हो सकती हैं।
- प्रत्येक विशेषता में एक डोमेन शामिल होता है जो स्वीकार्य मानों को परिभाषित करता है, संभावित रूप से इसके डेटा प्रकार, लंबाई, मान और अन्य विवरण सहित।
उदाहरण के लिए, एक विशेषता ज़िपकोड के लिए डोमेन एक संख्यात्मक डेटा प्रकार निर्दिष्ट कर सकता है, जैसे कि एक पूर्णांक, जिसे आमतौर पर एक INT या एक INTEGER कहा जाता है, जो डेटाबेस पर निर्भर करता है। या, एक डेटाबेस डिज़ाइनर इसे एक चरित्र के रूप में परिभाषित करना चुन सकता है, जिसे आमतौर पर CHAR कहा जाता है। विशेषता को आगे एक विशिष्ट लंबाई की आवश्यकता के लिए परिभाषित किया जा सकता है, या एक खाली या अज्ञात मान की अनुमति है या नहीं।
जब आप एक डोमेन को परिभाषित करने वाले सभी तत्वों को इकट्ठा करते हैं, तो आप एक अनुकूलित डेटा प्रकार के साथ समाप्त होते हैं, जिसे "उपयोगकर्ता द्वारा परिभाषित डेटा प्रकार" या यूडीटी भी कहा जाता है।
डोमेन अखंडता क्या है?
किसी विशेषता के अनुमत मान डोमेन अखंडता स्थापित करते हैं, जो यह सुनिश्चित करता है कि किसी फ़ील्ड के सभी डेटा में मान्य मान हों।
डोमेन अखंडता को परिभाषित किया गया है:
- डेटा प्रकार, जैसे पूर्णांक, वर्ण या दशमलव।
- डेटा की अनुमत लंबाई।
- सीमा, ऊपरी और निचली सीमाओं को परिभाषित करती है।
- कोई भी बाधा, या स्वीकार्य मूल्यों पर सीमाएं। उदाहरण के लिए, एक यू.एस. ज़िप कोड फ़ील्ड एक पूर्ण ज़िप+4 कोड या एक पूर्ण नौ-अंकीय कोड लागू कर सकता है।
- NULL समर्थन का प्रकार (चाहे किसी विशेषता का कोई अज्ञात या NULL मान हो सकता है)।
- डिफ़ॉल्ट मान, यदि कोई हो।
- दिनांक प्रारूप पेंटर, यदि लागू हो (उदाहरण के लिए, dd/mm/yy या mm/dd/yyyy)।
डोमेन बनाना
उन डेटाबेस के लिए जो स्ट्रक्चर्ड क्वेरी लैंग्वेज या SQL के फ्लेवर का उपयोग करते हैं, CREATE DOMAIN SQL कमांड का उपयोग करें।
उदाहरण के लिए, निष्पादन विवरण पांच वर्णों के साथ डेटा प्रकार CHAR की एक ज़िपकोड विशेषता बनाता है। NULL, या अज्ञात मान की अनुमति नहीं है। डेटा की सीमा 00000 और 99999 के बीच होनी चाहिए। यह पांच वर्णों के साथ डेटा प्रकार CHAR की एक ज़िपकोड विशेषता बनाता है। NULL, या अज्ञात मान की अनुमति नहीं है।
डोमेन ज़िप कोड CHAR बनाएं (5) पूरी जांच न करें (VALUE >='00000' और VALUE <='999999')
ये डेटाबेस बाधाएँ एक त्रुटि को उस एप्लिकेशन में धकेलती हैं जो बाधा का उल्लंघन होने पर आपके डेटाबेस के फ्रंट-एंड के रूप में कार्य करता है, इसलिए प्रोग्राम को ठीक से सोचने से पहले अपने प्रोग्राम में एक एरर-कैप्चर सबरूटीन को सैनिटी-चेक करने के लिए प्रोग्राम करें। डेटाबेस में अतिरिक्त जानकारी।