SQL सर्वर में चेक बाधा क्या है, इसका उपयोग किस लिए किया जाता है और इसका उपयोग किस लिए किया जाता है? यह लेख आपको इसका उत्तर देगा।
SQL सर्वर में चेक बाधा जांच बाधा क्या है?
SQL सर्वर (Transact-SQL) में चेक बाधा तालिका में प्रत्येक पंक्ति के लिए शर्तों को परिभाषित करने की अनुमति देता है।
नोट
- परीक्षण बाधाओं को SQL दृश्य में परिभाषित नहीं किया जा सकता है।
- तालिका में चेक बाधा उस तालिका के कॉलम को संदर्भित करना चाहिए, जो किसी अन्य तालिका में कॉलम को संदर्भित करने में असमर्थ है।
- चेक बाधाएं सबक्वेरी सबक्वेरी का उपयोग नहीं कर सकतीं।
- परीक्षण बाधाओं को तालिका बनाएं या तालिका बदलें आदेश द्वारा परिभाषित किया जा सकता है।
तालिका बनाएं आदेश के साथ जांच बाधाएं बनाएं
सिंटैक्स
CREATE TABLE ten_bang
(
cot1 kieudulieu [ NULL | NOT NULL ],
cot2 kieudulieu [ NULL | NOT NULL ],
…
CONSTRAINT ten_rangbuoc
CHECK [ NOT FOR REPLICATION ] (dieu_kien ten_cot)
);
SQL सर्वर में डेटा प्रकार
टेन_बैंग
तालिका का नाम जो चेक बाधा उत्पन्न करना चाहता है।
ten_rangbuoc
वह नाम जिसे आप चेक बाइंडिंग के लिए सेट करना चाहते हैं।
ten_cot
टेबल कॉलम जिस पर चेक बाधा लागू होती है।
हालत
शर्तें पूरी होनी चाहिए।
उदाहरण के लिए
CREATE TABLE nhanvien
(id_nhanvien INT NOT NULL,
ho VARCHAR(50) NOT NULL,
ten VARCHAR(50),
luong MONEY,
CONSTRAINT id_nhanvien_kiemtra
CHECK (id_nhanvien BETWEEN 1 AND 10000)
);
इस उदाहरण में, CREATE TABLE स्टेटमेंट टेबल में id_nhanvien_kiemtra नामक एक चेक बाधा उत्पन्न करता है। यह बाधा सुनिश्चित करेगी कि id_nhanvien सूचना फ़ील्ड में 1 और 10000 के बीच का मान है।
यह एक और उदाहरण है।
CREATE TABLE nhanvien
(id_nhanvien INT NOT NULL,
ho VARCHAR(50) NOT NULL,
ten VARCHAR(50),
luong MONEY,
CONSTRAINT luong_kiemtra
CHECK (luong > 0)
);
यह उदाहरण एक बाधा उत्पन्न करता है जो तालिका में चेकसम की जांच करता है, यह सुनिश्चित करता है कि वेतन शून्य से अधिक होगा।
ALTER TABLE कमांड के साथ चेक बाधाएं बनाएं
सिंटैक्स
ALTERTABLE ten_bang
ADD CONSTAINT ten_rangbuoc
CHECK (d
ieu_kien ten_cot);
टेन_बैंग
तालिका का नाम चेक बाधाओं को जोड़ना चाहता है।
ten_rangbuoc
चेक बाइंडिंग के लिए नाम सेट।
ten_cot
तालिका में कॉलम जो बाधाओं की जांच करते हैं, लागू होते हैं।
हालत
शर्तें जो बाधाओं की जांच करती हैं उन्हें पूरा करना होगा।
उदाहरण के लिए
यह SQL सर्वर में चेक बाधा उत्पन्न करने के लिए ALTER TABLE कमांड का उपयोग करने का एक उदाहरण है।
ALTER TABLEnhanvien
ADD CONSTRAINT ho_kiemtra
CHECK (ho IN ('S
mith', 'Anderson', 'Jonas'));
चेक बाधा ho_kiemtra मौजूदा टेबल पर बनाई गई है, यह सुनिश्चित करते हुए कि कर्मचारी के उपनाम में स्मिथ, एंडरसन या जोनास के लिए केवल मान होंगे।
चेक बाधाओं को हटाएं
सिंटैक्स
ALTER TABLE ten_bang
DROP
CONSTRAINT ten_rangbuoc
टेन_बैंग
तालिका का नाम चेक बाधा को हटाने के लिए।
ten_rangbuoc
चेक बाध्यकारी नाम हटाना चाहता है।
उदाहरण के लिए
ALTER TABLE nhanvien
DROP
CONSTRAINT ho_kiemtra;
यह कमांड टेबल पर मौजूद बाधा ho_kiemtra को हटा देगा।
चेक बाइंडिंग सक्षम करें
सिंटैक्स
ALTER TABLE ten_bang
WITH CHEC
K CHECK CONSTRAINT ten_rangbuoc;
टेन_बैंग
तालिका का नाम चेक बाधा को पुन:सक्षम करने के लिए।
ten_rangbuoc
चेक बाधा के नाम को सक्रिय करने की आवश्यकता है।
उदाहरण के लिए
ALTER TABLE nhanvien
WITH CHEC
K CHECK CONSTRAINT luong_kiemtra;
यह उदाहरण तालिका में तालिका पर चेक बाधा को फिर से सक्रिय करता है।
चेक बाइंडिंग अक्षम करें
सिंटैक्स
ALTER TABLE ten_bang
NOCHECK
CONSTRAINT ten_rangbuoc;
टेन_बैंग
चेक बाधाओं को अक्षम करने के लिए तालिका का नाम।
ten_rangbuoc
चेक बाधा का नाम अक्षम करना चाहता है।
उदाहरण के लिए
ALTER TABLE nhanvien
NOCHECK
CONSTRAINT luong_kiemtra;
यह उदाहरण तालिका में luong_kiemtra पर चेक बाधा को अक्षम करता है।