UNIT 4: SQL-99 और इसकी प्रमुख अवधारणाएँ

Hello Everyone, Welcome to Rajasthan Polytechnic Blogs.

Subject - Introduction to DBMS CS 4002(Same as CI/IT 4002)
Branch - Computer Science Engineering
Semester - 4th Semester

📍⚡ Important 
▶ Video PDF - Update Soon
👉 WhatsApp Group - Join Now
👉 Telegram Channel - Join Now
📄 Notes in Hindi - Click Here
📄 Notes in English - Click Here
🔥 4th Semester All Subjects Notes - Click Here

Please take a moment to share your Review in Comment Section.

UNIT 4: SQL-99 और इसकी प्रमुख अवधारणाएँ

इस यूनिट में हम SQL-99 (Structured Query Language) के बारे में जानेंगे, जो एक डेटाबेस क्वेरी भाषा है, जिसे डेटाबेस से डेटा प्राप्त करने, अपडेट करने, और संरक्षित करने के लिए उपयोग किया जाता है। हम इसके विभिन्न भागों को विस्तार से समझेंगे जैसे कि स्कीमा डेफिनिशन, कंस्ट्रेंट्स, क्वेरीज और व्यूज, साथ ही सुरक्षा और SQL प्रोग्रामिंग तकनीकियाँ।


4.1 SQL-99 🔍

SQL-99 एक SQL का संस्करण है, जो डेटाबेस के संचालन और प्रबंधन के लिए नए फीचर्स और सुधारों को पेश करता है। SQL-99 में विभिन्न नई विशेषताएँ जोड़ी गई हैं, जो डेटाबेस की कार्यक्षमता को बढ़ाती हैं।

4.1.1 स्कीमा डेफिनिशन (Schema Definition) 🏗️

स्कीमा डेटाबेस का संरचनात्मक विवरण होता है, जिसमें टेबल्स, उनके बीच संबंध, और अन्य डेटाबेस ऑब्जेक्ट्स (जैसे व्यूज़, इंडेक्स आदि) की परिभाषाएँ होती हैं।

  • CREATE SCHEMA: यह SQL कमांड एक नया स्कीमा बनाने के लिए उपयोग किया जाता है। स्कीमा में डेटाबेस ऑब्जेक्ट्स को समूहीकरण करने का तरीका होता है।

    सिंटेक्स:

    CREATE SCHEMA schema_name;
  • CREATE TABLE: इस कमांड का उपयोग एक टेबल बनाने के लिए किया जाता है, जिसमें एट्रिब्यूट्स और कंस्ट्रेंट्स होते हैं।

    सिंटेक्स:

    CREATE TABLE table_name ( column1 datatype, column2 datatype, ... );

यह स्कीमा डेटाबेस की संरचना को परिभाषित करता है, जो बाद में डेटाबेस के उपयोगकर्ताओं के द्वारा डेटा को संग्रहित और एक्सेस करने के लिए उपयोग किया जाता है।


4.1.2 कंस्ट्रेंट्स (Constraints) 🛑

कंस्ट्रेंट्स डेटाबेस में डेटा की अखंडता और सहीता सुनिश्चित करने के लिए उपयोग किए जाते हैं। SQL-99 में कई प्रकार के कंस्ट्रेंट्स होते हैं, जैसे कि:

  • Primary Key (PK): एक टेबल में प्रत्येक रिकॉर्ड को अद्वितीय रूप से पहचानने के लिए एक कॉलम या कॉलम का समूह।

    सिंटेक्स:

    CREATE TABLE Student ( Student_ID INT PRIMARY KEY, Name VARCHAR(100) );
  • Foreign Key (FK): एक टेबल में एक कॉलम जो दूसरे टेबल के प्राइमरी की से जुड़ा होता है, जिससे दोनों टेबल्स के बीच संबंध स्थापित होता है।

    सिंटेक्स:

    CREATE TABLE Enrollment ( Enrollment_ID INT PRIMARY KEY, Student_ID INT, FOREIGN KEY (Student_ID) REFERENCES Student(Student_ID) );
  • Unique: यह सुनिश्चित करता है कि एक कॉलम के सभी मान अद्वितीय हों।

    सिंटेक्स:

    CREATE TABLE Employee ( Employee_ID INT UNIQUE, Name VARCHAR(100) );
  • Check: यह सुनिश्चित करता है कि डेटा एक विशिष्ट शर्त को पूरा करे।

    सिंटेक्स:

    CREATE TABLE Product ( Product_ID INT PRIMARY KEY, Price DECIMAL CHECK (Price > 0) );
  • Not Null: यह सुनिश्चित करता है कि एक कॉलम में NULL मान नहीं हो सकते हैं।

    सिंटेक्स:

    CREATE TABLE Customer ( Customer_ID INT PRIMARY KEY, Name VARCHAR(100) NOT NULL );

कंस्ट्रेंट्स डेटाबेस की डेटा अखंडता और गुणवत्ता बनाए रखने के लिए महत्वपूर्ण हैं। ये सुनिश्चित करते हैं कि केवल वैध और सही डेटा ही डेटाबेस में डाला जाए।


4.1.3 क्वेरीज और व्यूज़ (Queries and Views) 📊

SQL क्वेरीज का उपयोग डेटाबेस से डेटा प्राप्त करने के लिए किया जाता है, और व्यूज़ डेटाबेस के एक वर्चुअल टेबल होते हैं जो वास्तविक टेबल्स से डेटा को विशेष तरीके से प्रस्तुत करते हैं।

  • Queries (क्वेरीज): SQL क्वेरीज का उपयोग डेटाबेस से डेटा को प्राप्त करने के लिए किया जाता है। सबसे सामान्य क्वेरी SELECT होती है।

    सिंटेक्स:

    SELECT column1, column2 FROM table_name WHERE condition;

    उदाहरण:

    SELECT Name, Age FROM Student WHERE Age > 20;
  • Views (व्यूज़): एक व्यू एक वर्चुअल टेबल है, जो एक या अधिक टेबल्स के डेटा को विशेष रूप से प्रस्तुत करता है। व्यूज़ को क्वेरीज के रूप में डिफाइन किया जाता है और वे अस्थायी टेबल्स की तरह कार्य करते हैं।

    सिंटेक्स:

    CREATE VIEW view_name AS SELECT column1, column2 FROM table_name WHERE condition;

    उदाहरण:

    CREATE VIEW AgeView AS SELECT Name, Age FROM Student WHERE Age > 20;

व्यूज़ का उपयोग डेटा को अलग-अलग दृष्टिकोणों से देखने के लिए किया जाता है, और ये उपयोगकर्ताओं को जटिल क्वेरीज को सरल बनाने में मदद करते हैं।


4.2 सुरक्षा (Security) 🔐

डेटाबेस सुरक्षा यह सुनिश्चित करने के लिए महत्वपूर्ण है कि डेटाबेस में डेटा को अस्वीकृत पहुँच, डेटा चोरी, या भ्रष्टाचार से बचाया जाए। SQL-99 में सुरक्षा से संबंधित कई उपाय होते हैं, जैसे:

  • यूज़र ऑथेंटिकेशन: डेटाबेस में लॉगिन और एक्सेस करने के लिए उपयोगकर्ताओं को प्रमाणीकरण (यूज़रनेम और पासवर्ड) की आवश्यकता होती है।

  • रोल-आधारित एक्सेस कंट्रोल: यह प्रणाली विभिन्न उपयोगकर्ताओं को विभिन्न अनुमति स्तर (जैसे कि डेटा देखना, अपडेट करना, या डिलीट करना) प्रदान करती है।

  • इन्क्रिप्शन: डेटाबेस में संवेदनशील डेटा को इन्क्रिप्ट करके उसे अस्वीकृत एक्सेस से बचाया जा सकता है।

  • ऑडिट लॉग: डेटाबेस सिस्टम में किसी भी असामान्य या संदिग्ध गतिविधि को ट्रैक करने के लिए ऑडिट लॉग्स बनाए जाते हैं।

SQL-99 में इन सुरक्षा उपायों को लागू करने के लिए विभिन्न विकल्प होते हैं, जैसे कि GRANT और REVOKE स्टेटमेंट्स का उपयोग।

सिंटेक्स (GRANT):

GRANT SELECT, INSERT ON table_name TO user_name;

सिंटेक्स (REVOKE):

REVOKE SELECT, INSERT ON table_name FROM user_name;

4.3 SQL प्रोग्रामिंग तकनीकियाँ (SQL Programming Techniques) 💻

SQL में प्रोग्रामिंग तकनीकें डेटा को प्रबंधित करने, क्वेरीज को अधिक प्रभावी बनाने, और विभिन्न कार्यों को स्वचालित करने के लिए उपयोग की जाती हैं।

  • Stored Procedures (स्टोर किए गए प्रोग्राम): SQL में स्टोर किए गए प्रोग्राम्स (स्टोर प्रोसिजर्स) को एक नाम के तहत संग्रहित किया जाता है और उन्हें बार-बार उपयोग के लिए कॉल किया जा सकता है।

    सिंटेक्स:

    CREATE PROCEDURE procedure_name AS BEGIN SQL_query; END;
  • Triggers (ट्रिगर): ट्रिगर एक विशेष घटना (जैसे डेटा INSERT, UPDATE या DELETE) होने पर स्वचालित रूप से कार्य करता है।

    सिंटेक्स:

    CREATE TRIGGER trigger_name AFTER INSERT ON table_name FOR EACH ROW BEGIN -- trigger actions END;
  • Functions (फंक्शन्स): SQL में फंक्शन्स का उपयोग जटिल गणना या कार्यों को संक्षिप्त रूप से करने के लिए किया जाता है। ये एक मान लौटाते हैं और उन्हें क्वेरीज में इस्तेमाल किया जा सकता है।

    सिंटेक्स:

    CREATE FUNCTION function_name (parameters) RETURNS return_type AS BEGIN -- function logic END;

निष्कर्ष ✨

  • SQL-99 का उपयोग डेटाबेस को संरचित रूप से डिज़ाइन और प्रबंधित करने के लिए किया जाता है। इसमें स्कीमा डेफिनिशन, कंस्ट्रेंट्स, क्वेरीज, और व्यूज़ जैसी प्रमुख अवधारणाएँ शामिल हैं।
  • सुरक्षा उपायों का पालन करने से डेटाबेस को अस्वीकृत एक्सेस से बचाया जा सकता है और SQL प्रोग्रामिंग तकनीकियाँ जटिल कार्यों को स्वचालित करती हैं।
  • SQL-99 का सही उपयोग डेटाबेस प्रबंधन को अधिक प्रभावी और सुरक्षित बनाता है।

Post a Comment

0 Comments