डेटा कंट्रोल भाषा (डीसीएल)

GRANT, REVOKE आणि DENY डेटाबेस परवानग्या

डेटा कंट्रोल लँग्वेज (डीसीएल) हे स्ट्रक्चर्ड क्वेरी लैंग्वेज (एससीएल) चा उपसंच आहे आणि डेटाबेस प्रशासकांना संबंधक डाटाबेसमध्ये सुरक्षा प्रवेश संरचीत करण्याची परवानगी देतो. हे डेटा डेफिनेशन लँग्वेज (डीडीएल) ची पूर्तता करते, ज्याचा वापर डेटाबेसम ऑब्जेक्ट्स जोडणे आणि हटविण्यासाठी केला जातो, आणि डेटा मॅनिपुलेशन लँग्वेज (डीएमएल) वापरला जातो, डेटाबेसमची सामग्री मिळवणे, घालणे आणि सुधारणे.

एससीएल सबसेट्सचे डीसीएल सर्वात सोपा आहे, कारण त्यामध्ये केवळ तीन कमांड्स आहेत: GRANT, REVOKE, आणि DENY एकत्रित, हे तीन कमांड प्रशासकांना अत्यंत बारीक स्वरूपात डेटाबेस परवानग्या सेट आणि काढून टाकण्याची लवचिकता प्रदान करतात.

अनुदान आदेशासह परवानगी जोडणे

GRANT आदेश प्रशासकाद्वारे डेटाबेस वापरकर्त्यास नवीन परवानगी जोडण्यासाठी वापरले जाते. त्यात एक अत्यंत साध्या सिंटॅक्स आहे, त्याची व्याख्या खालीलप्रमाणे आहे:

GRANT [विशेषाधिकार] वर [ऑब्जेक्ट] ते [वापरकर्ता] [GRANT OPTION सह]

येथे आपण या कमांडसह प्रत्येक पॅरामीटर्सची पूर्ती करु शकता.

उदाहरणार्थ, असे मानू नका की आपण यूजर जो यांना एचआर नावाच्या एका डेटाबेसमध्ये कर्मचारी टेबलवरून माहिती पुनर्प्राप्त करण्याची क्षमता देऊ इच्छित आहात. आपण खालील SQL आदेश वापरू शकता:

जोपर्यंत एचआर कर्मचार्यांची निवड करा

ज्यो मध्ये आता कर्मचारी टेबल पासून माहिती पुनर्प्राप्त करण्याची क्षमता असेल. तथापि, इतर वापरकर्त्यास त्या टेबलवरून माहिती पुनर्प्राप्त करण्यास परवानगी देणार नाही कारण GRANT विधानात आपण GRANT OPTION चे कलम समाविष्ट केले नाही.

डेटाबेस प्रवेश रद्द करणे

REVOKE आदेश पूर्वी वापरलेल्या वापरकर्त्याद्वारे डेटाबेस प्रवेश काढण्यासाठी वापरला जातो. या आदेशासाठी सिंटॅक्स परिभाषित केले आहे:

REVOKE [GRANT OPTION FOR] [परवानगी] ON [ऑब्जेक्ट] FROM [वापरकर्ता] [कॅसकेड]

REVOKE आदेशासाठी पॅरामिटर्सवर कमी करणे येथे आहे:

उदाहरणार्थ, मागील आदेशामध्ये खालील आदेश ज्योसाठी दिलेल्या परवानगीला मागे घेतो:

जोसेफ मधील कर्मचा-यांवर REVOke निवडा

स्पष्टपणे डेटाबेस प्रवेश नाकारणे

DENY आदेश विशिष्ट उपयोगास प्राप्त करण्यापासून वापरकर्त्याला स्पष्टपणे प्रतिबंधित करण्यासाठी वापरला जातो. हे उपयोगी आहे जेव्हा एखादा वापरकर्ता भूमिका किंवा गटाचा सदस्य असतो ज्यास परवानगी दिली जाते, आणि आपण त्या वैयक्तिक वापरकर्त्यास अपवाद तयार करून परवानगी मिळविण्यापासून प्रतिबंधित करू इच्छित आहात. या आदेशासाठी सिंटॅक्स खालीलप्रमाणे आहे:

DENY [परवानगी] ON [ऑब्जेक्ट] ते [वापरकर्ता]

DENY आदेशासाठी पॅरामिटर्स GRANT कमांडसाठी वापरल्या जाणार्या समान आहेत.

उदाहरणार्थ, जर आपण हे सुनिश्चित करू इच्छित असाल की मॅथ्यू कर्मचार्यांच्या टेबलवरून माहिती हटविण्याची क्षमता प्राप्त करणार नाही, तर खालील आदेश जारी करा:

मॅथ्यूसाठी एचआर कर्मचार्यांची हानी करा