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