Feedback Form

Schema in SQL-99 in Hindi

Schema in SQL-99 - Complete Guide

Schema in SQL-99 in Hindi

SQL-99 (जिसे SQL:1999 भी कहते हैं) relational database standard का एक महत्वपूर्ण संस्करण है। इस संस्करण में schema की अवधारणा को formalize किया गया है। यहाँ हम सरल भाषा में समझेंगे कि Schema क्या है, इसके लाभ, syntax, उदाहरण एवं उपयोग।

Schema क्या है?

Schema essentially एक logical container या namespace है, जिसमें database objects जैसे tables, types, views आदि रखे जाते हैं। SQL-99 में schema एक महत्वपूर्ण abstraction है।

  • Schema एक logical grouping है database objects का।
  • Schema database और user को अलग-अलग पहचान देती है।
  • Schema से data organization बेहतर होती है।

SQL-99 में CREATE SCHEMA क्या है?

CREATE SCHEMA statement से हम नया schema बना सकते हैं, जिसमें हम क्रम से objects define कर सकते हैं।

  • CREATE SCHEMA schema_name AUTHORIZATION owner_name; — सबसे सरल form।
  • आप SCHEMA के भीतर сразу tables, views आदि define कर सकते हैं।
  • SQL-99 standard रिपोर्ट करता है कि schema create करना एक atomic operation हो सकता है।

Schema vs Database (SQL-99 संदर्भ में)

बहुत से लोग schema और database को interchangeably use करते हैं, लेकिन SQL-99 में उनका अंतर है।

  • Database एक physical storage या instance हो सकता है, जबकि schema logical structure है।
  • एक database में कई schemas हो सकते हैं।
  • Schema user-level logical partitioning है, database-level अलग storage partitioning नहीं होती।

Schema Objects: Tables, Types, Views आदि

Schema के भीतर वह objects आते हैं जो data storage और data representation के लिए ज़रूरी हैं।

  • Tables: rows और columns structure में data रखता है।
  • Types: user-defined data types (UDTs) बनाए जाते हैं।
  • Views: particular selected data को present करने का तरीका।
  • Functions, Procedures, Domains आदि भी schema objects बन सकते हैं।

Schema Authorization & Privileges

Schema बनाने या उपयोग करने के लिए authorization mechanism लागू होती है।

  • जब आप CREATE SCHEMA … AUTHORIZATION user_name करते हैं, तो उस user को schema owner बनाया जाता है।
  • Owner को full control मिलता है—OBJECTS बनाने, हटाने की अनुमति।
  • अन्य users को privileges देना ज़रूरी होता है जैसे SELECT, INSERT इत्यादि।

Altering और Dropping Schema

Schema को बदलना (alter) या हटाना (drop) करना संभव है पर conditions होती हैं।

  • ALTER SCHEMA statement का उपयोग कुछ DBMS में सीमित scope में ही हो सकता है।
  • जब आप DROP SCHEMA schema_name CASCADE; करते हैं, तो schema के अंदर के सभी objects भी हट जाते हैं।
  • DROP करना आसान नहीं होता यदि किसी object पर constraints या references हों।

Schema Constraints & Data Integrity

Schema के अंदर constraints data integrity सुनिश्चित करती हैं।

  • Primary Key, Unique Key constraints schema-level design decisions होती हैं।
  • Foreign Key constraints relationships को enforce करती हैं।
  • Check, Not Null constraints भी schema objects पर लागू होती हैं।

SQL-99 Schema का उदाहरण

नीचे एक उदाहरण है जिससे आप समझ पाएँगे कि SQL-99 style में schema कैसे define किया जाता है:


CREATE SCHEMA School AUTHORIZATION alice  
  CREATE TABLE Student (  
    student_id INTEGER PRIMARY KEY,  
    name VARCHAR(100) NOT NULL  
  );  
  CREATE TABLE Course (  
    course_id INTEGER PRIMARY KEY,  
    title VARCHAR(100) NOT NULL  
  );  
  CREATE TABLE Enrollment (  
    student_id INTEGER REFERENCES Student(student_id),  
    course_id INTEGER REFERENCES Course(course_id),  
    grade CHAR(1),  
    PRIMARY KEY (student_id, course_id)  
  );  

इस उदाहरण में schema नाम School है, और उसमें तीन tables बनाए गए हैं: Student, Course, Enrollment।

SQL-99 Schema के लाभ और उपयोग

SQL-99 के schema feature से कई फायदे होते हैं:

  • Logical separation: अलग-अलग modules के objects अलग schema में रख सकते हैं।
  • Security: schema-level privileges assign कर सकते हैं।
  • Namespace collisions कम होती हैं। उदाहरण: दो schemas में same table name हो सकता है।
  • Modularity: बड़ी systemen को modular रूप से design कर सकते हैं।

Challenges और limitations

कुछ limitations और समस्याएं होती हैं जिन्हें जानना ज़रूरी है:

  • कुछ DBMS SQL-99 के full schema support नहीं देते।
  • ALTER SCHEMA operations सीमित हो सकती हैं।
  • Schema changes करते समय downtime या locking issues हो सकते हैं।

निष्कर्ष (Conclusion)

संक्षेप में, Schema in SQL-99 एक महत्वपूर्ण logical abstraction है जो database objects को organize और manage करने में मदद करती है। यदि आप database विकास या डिजाइन करते हैं, तो यह अवधारणा समझना ज़रूरी है। SQL-99 standard को detail में जानने के लिए आप Oracle या अन्य vendor documentation देख सकते हैं, जैसे Oracle’s SQL Reference (Oracle एक high authority domain है)।

उम्मीद है यह विस्तृत विवरण आपको Schema in SQL-99 in Hindi समझने में मदद करेगा।

FAQs

Schema एक logical container है database objects (tables, types, views आदि) के लिए जो namespace और organization प्रदान करता है।
Syntax: CREATE SCHEMA schema_name AUTHORIZATION owner_name; — आप इसके अंदर tables, views आदि भी define कर सकते हैं।
Database physical या instance-level storage संदर्भ देता है, जबकि schema logical structure है जिसमें objects organized होते हैं।
Schema objects में tables, types, views, functions, procedures आदि शामिल होते हैं।
DROP SCHEMA schema_name CASCADE; से schema व उसके objects हट जाते हैं। ALTER SCHEMA कुछ DBMS में सीमित होता है।
यह logical separation, security, namespace control और modularity प्रदान करता है।