Computer >> कंप्यूटर >  >> सॉफ्टवेयर >> Office

डेटा नियंत्रण भाषा (DCL)

डेटा नियंत्रण भाषा संरचित क्वेरी भाषा का एक सबसेट है। डेटाबेस व्यवस्थापक DCL का उपयोग रिलेशनल डेटाबेस तक सुरक्षा पहुँच को कॉन्फ़िगर करने के लिए करते हैं। यह डेटा परिभाषा भाषा . का पूरक है , जो डेटाबेस ऑब्जेक्ट्स को जोड़ता और हटाता है, और डेटा मैनिपुलेशन लैंग्वेज, जो डेटाबेस की सामग्री को पुनः प्राप्त, सम्मिलित और संशोधित करता है।

DCL SQL उपसमुच्चय में सबसे सरल है, क्योंकि इसमें केवल तीन कमांड होते हैं:GRANT, REVOKE, और DENY। संयुक्त रूप से, ये तीन आदेश प्रशासकों को बारीक ढंग से डेटाबेस अनुमतियों को सेट करने और हटाने के लिए लचीलापन प्रदान करते हैं।

GRANT कमांड के साथ अनुमतियाँ जोड़ना

GRANT कमांड डेटाबेस उपयोगकर्ता के लिए नई अनुमतियाँ जोड़ता है। इसका एक बहुत ही सरल सिंटैक्स है, जिसे निम्नानुसार परिभाषित किया गया है:

GRANT [privilege]
ON [object]
TO [user]
[WITH GRANT OPTION]

यहां प्रत्येक पैरामीटर पर विस्तृत जानकारी दी गई है जिसे आप इस आदेश के साथ आपूर्ति कर सकते हैं:

  • विशेषाधिकार - या तो कीवर्ड ALL (विभिन्न प्रकार की अनुमतियां देने के लिए) या एक विशिष्ट डेटाबेस अनुमति या अनुमतियों का सेट हो सकता है। उदाहरणों में डेटाबेस बनाना, चयन करना, सम्मिलित करना, अद्यतन करना, हटाना, निष्पादित करना और दृश्य बनाना शामिल हैं।
  • वस्तु - कोई भी डेटाबेस ऑब्जेक्ट हो सकता है। इस क्लॉज में आपके द्वारा शामिल किए गए डेटाबेस ऑब्जेक्ट के प्रकार के आधार पर वैध विशेषाधिकार विकल्प भिन्न होते हैं। आमतौर पर, ऑब्जेक्ट या तो डेटाबेस, फ़ंक्शन, संग्रहीत कार्यविधि, तालिका या दृश्य होगा।
  • उपयोगकर्ता - कोई भी डेटाबेस उपयोगकर्ता हो सकता है। यदि आप भूमिका-आधारित डेटाबेस सुरक्षा का उपयोग करना चाहते हैं, तो आप इस खंड में उपयोगकर्ता के लिए एक भूमिका भी बदल सकते हैं।
  • यदि आप वैकल्पिक अनुदान विकल्प के साथ . शामिल करते हैं GRANT कमांड के अंत में क्लॉज, आप निर्दिष्ट उपयोगकर्ता को न केवल SQL स्टेटमेंट में परिभाषित अनुमतियाँ प्रदान करते हैं, बल्कि उपयोगकर्ता को उन्हीं अनुमतियों को अन्य को आगे देने की अनुमति भी देते हैं। डेटाबेस उपयोगकर्ता। इस कारण से, इस खंड का सावधानी से उपयोग करें।

उदाहरण के लिए, मान लें कि आप उपयोगकर्ता को जो प्रदान करना चाहते हैं कर्मचारी . से जानकारी प्राप्त करने की क्षमता HR . नामक डेटाबेस में तालिका . निम्न SQL कमांड का उपयोग करें:

GRANT SELECT
ON HR.employees
TO Joe

जो कर्मचारियों की तालिका से जानकारी प्राप्त कर सकता है। हालाँकि, वह अन्य उपयोगकर्ताओं को उस तालिका से जानकारी प्राप्त करने की अनुमति नहीं दे पाएगा क्योंकि DCL स्क्रिप्ट में WITH GRANT OPTION क्लॉज़ शामिल नहीं था।

डेटाबेस एक्सेस को निरस्त करना

REVOKE कमांड उस उपयोगकर्ता से डेटाबेस एक्सेस को हटा देता है जिसे पहले ऐसी एक्सेस दी गई थी। इस कमांड का सिंटैक्स निम्नानुसार परिभाषित किया गया है:

REVOKE [GRANT OPTION FOR] [permission]
ON [object]
FROM [user]
[CASCADE]

यहाँ REVOKE कमांड के मापदंडों पर विस्तृत जानकारी दी गई है:

  • अनुमति - पहचाने गए उपयोगकर्ता से हटाने के लिए डेटाबेस अनुमतियों को निर्दिष्ट करता है। कमांड पहले से पहचानी गई अनुमति के लिए किए गए GRANT और DENY दोनों दावों को रद्द कर देता है।
  • वस्तु - कोई भी डेटाबेस ऑब्जेक्ट हो सकता है। इस क्लॉज में आपके द्वारा शामिल किए गए डेटाबेस ऑब्जेक्ट के प्रकार के आधार पर वैध विशेषाधिकार विकल्प भिन्न होते हैं। आमतौर पर, ऑब्जेक्ट या तो डेटाबेस, फ़ंक्शन, संग्रहीत कार्यविधि, तालिका या दृश्य होगा।
  • उपयोगकर्ता - कोई भी डेटाबेस उपयोगकर्ता हो सकता है। यदि आप भूमिका-आधारित डेटाबेस सुरक्षा का उपयोग करना चाहते हैं, तो आप इस खंड में उपयोगकर्ता के लिए एक भूमिका भी बदल सकते हैं।
  • के लिए अनुदान विकल्प खंड अन्य उपयोगकर्ताओं को निर्दिष्ट अनुमति देने के लिए निर्दिष्ट उपयोगकर्ता की क्षमता को हटा देता है। यदि आप के लिए अनुदान विकल्प . शामिल करते हैं REVOKE कथन में खंड, प्राथमिक अनुमति निरस्त नहीं की जाती है। यह खंड केवल देने की क्षमता को निरस्त करता है।
  • कैस्केड विकल्प किसी भी उपयोगकर्ता से निर्दिष्ट अनुमति को भी रद्द कर देता है जिसे निर्दिष्ट उपयोगकर्ता ने अनुमति दी थी।

निम्न आदेश पिछले उदाहरण में जो को दी गई अनुमति को निरस्त करता है:

REVOKE SELECT
ON HR.employees
FROM Joe

स्पष्ट रूप से डेटाबेस एक्सेस को अस्वीकार करना

DENY कमांड स्पष्ट रूप से उपयोगकर्ता को एक विशेष अनुमति प्राप्त करने से रोकता है। यह सुविधा तब सहायक होती है जब कोई उपयोगकर्ता किसी भूमिका या समूह का सदस्य होता है जिसे अनुमति दी जाती है, और आप अपवाद बनाकर उस व्यक्तिगत उपयोगकर्ता को अनुमति प्राप्त करने से रोकना चाहते हैं। इस कमांड का सिंटैक्स इस प्रकार है:

DENY [permission]
ON [object]
TO [user]

DENY कमांड के पैरामीटर GRANT कमांड के लिए उपयोग किए जाने वाले समान हैं। उदाहरण के लिए, यदि आप यह सुनिश्चित करना चाहते हैं कि मैथ्यू को कभी भी कर्मचारियों की तालिका से जानकारी को हटाने की क्षमता प्राप्त नहीं होगी, तो निम्न आदेश जारी करें:

DENY DELETE
ON HR.employees
TO Matthew

  1. MS Access से डेटा को SQL सर्वर डेटाबेस में माइग्रेट करें

    हाल ही में, मुझे एक्सेस डेटाबेस से SQL सर्वर 2014 में डेटा माइग्रेट करना पड़ा क्योंकि मेरा डेटाबेस एक्सेस के लिए बहुत बड़ा हो रहा था। हालांकि प्रक्रिया काफी सरल है, मुझे लगा कि मैं चरण-दर-चरण निर्देशों के साथ एक लेख लिखूंगा। सबसे पहले, आपको यह सुनिश्चित करने की आवश्यकता है कि आपके कंप्यूटर पर SQL स

  1. एक्सेल में डेटाबेस कैसे बनाएं (आसान चरणों के साथ)

    एक्सेल में एक साधारण डेटाबेस बनाना नहीं जानते? इस लेख में, हम आपको दिखाएंगे कि कैसे आप केवल 7 . में एक्सेल में एक डेटाबेस बना सकते हैं आसान कदम। क्या आप एमएस एक्सेस को डेटाबेस के रूप में उपयोग करने के लिए एक जटिल उपकरण पाते हैं? तो, ऐसा करने के लिए एक्सेल एक बेहतरीन टूल है। आइए जानें तकनीक। निम्न

  1. एक ऐसा डेटाबेस कैसे बनाएं जो एक्सेल में अपने आप अपडेट हो जाए

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