Comprehensive theory, key formulas, diagrams, and memory aids for डेटाबेस अवधारणाएँ.
आज के डिजिटल युग में विशाल मात्रा में डेटा को व्यवस्थित, सुरक्षित और कुशलतापूर्वक संग्रहीत करने की आवश्यकता होती है। फाइलों में डेटा संग्रहीत करने से कई समस्याएँ उत्पन्न होती हैं - डेटा की पुनरावृत्ति, असंगतता और सुरक्षा की कमी। इन समस्याओं का समाधान डेटाबेस (Database) प्रदान करता है। इस अध्याय में हम डेटाबेस की अवधारणा, उसकी विशेषताएँ, डेटाबेस प्रबंधन प्रणाली (DBMS), रिलेशनल मॉडल, कुंजियाँ (Keys) और आगे SQL अध्याय की नींव को समझेंगे।
डेटाबेस केवल डेटा का संग्रह नहीं है, बल्कि यह एक संगठित प्रणाली है जो डेटा को तालिकाओं में व्यवस्थित करती है और उस पर विभिन्न क्रियाएँ (जोड़ना, सुधारना, हटाना, खोजना) करने की सुविधा देती है। स्कूल का परीक्षा परिणाम प्रणाली, बैंक का खाता प्रबंधन, ऑनलाइन शॉपिंग - सभी डेटाबेस पर आधारित हैं।
डेटाबेस परस्पर संबंधित डेटा का एक संगठित संग्रह है, जिसे सरलता से एक्सेस, प्रबंधित और अपडेट किया जा सकता है। उदाहरण के लिए, एक स्कूल का डेटाबेस विद्यार्थियों, शिक्षकों, विषयों और परीक्षा परिणामों की जानकारी संग्रहीत कर सकता है।
DBMS एक सॉफ़्टवेयर है जो डेटाबेस के निर्माण, संचालन और प्रबंधन में सहायता करता है। यह उपयोगकर्ताओं और डेटाबेस के बीच मध्यस्थ के रूप में कार्य करता है। DBMS की मुख्य क्षमताएँ:
रिलेशनल मॉडल में डेटा को तालिकाओं (Tables) या संबंधों (Relations) के रूप में संग्रहीत किया जाता है। इस मॉडल में प्रत्येक तालिका में:
| रोलनो | नाम | कक्षा | शहर |
|---|---|---|---|
| 101 | अनु | XII | दिल्ली |
| 102 | रवि | XII | मुंबई |
| 103 | कविता | XII | दिल्ली |
यहाँ तालिका की डिग्री = 4 (स्तंभ), कार्डिनैलिटी = 3 (पंक्तियाँ), प्राथमिक कुंजी = रोलनो।
कुंजियाँ तालिकाओं में रिकॉर्ड्स की पहचान और संबंध स्थापित करने के लिए प्रयुक्त होती हैं।
प्राथमिक कुंजी वह विशेषता (या विशेषताओं का समूह) है जो तालिका के प्रत्येक रिकॉर्ड को विशिष्ट रूप से पहचानती है। इसकी विशेषताएँ: - इसमें अद्वितीय (unique) मान होते हैं। - इसमें NULL मान नहीं हो सकता। - एक तालिका में केवल एक प्राथमिक कुंजी होती है।
उपरोक्त तालिका में रोलनो प्राथमिक कुंजी है।
वे सभी विशेषताएँ जो प्राथमिक कुंजी बनने के योग्य हों, कैंडिडेट कुंजी कहलाती हैं। प्राथमिक कुंजी इन्हीं में से एक चुनी जाती है।
कैंडिडेट कुंजियों में से जो प्राथमिक कुंजी नहीं चुनी जाती, वे वैकल्पिक कुंजी कहलाती हैं।
विदेशी कुंजी वह विशेषता है जो किसी अन्य तालिका की प्राथमिक कुंजी को संदर्भित करती है। इससे दो तालिकाओं के बीच संबंध स्थापित होता है।
| रोलनो (PK) | नाम | शहर | पिनकोड |
|---|---|---|---|
| पिनकोड (PK) | शहर |
|---|---|
यदि पहली तालिका का पिनकोड स्तंभ दूसरी तालिका के पिनकोड (प्राथमिक कुंजी) को संदर्भित करे तो पहली तालिका का पिनकोड विदेशी कुंजी है।
तालिकाओं के बीच निम्नलिखित प्रकार के संबंध होते हैं:
पाइथन में sqlite3 मॉड्यूल का उपयोग करके डेटाबेस के साथ कार्य किया जा सकता है। SQLite एक हल्का रिलेशनल डेटाबेस है जो पाइथन में अंतर्निहित होता है:
import sqlite3
conn = sqlite3.connect("school.db")
cursor = conn.cursor()
cursor.execute("CREATE TABLE IF NOT EXISTS student (roll INTEGER PRIMARY KEY, name TEXT, city TEXT)")
cursor.execute("INSERT INTO student VALUES (101, 'अनु', 'दिल्ली')")
conn.commit()
cursor.execute("SELECT * FROM student")
for row in cursor.fetchall():
print(row)
conn.close()
| शब्द | अर्थ |
|---|---|
| तालिका (Relation) | पंक्तियों-स्तंभों का संग्रह |
| टपल (Row) | एक रिकॉर्ड |
| विशेषता (Column) | एक गुण |
| डोमेन | वैध मानों का समुच्चय |
| डिग्री | स्तंभों की संख्या |
| कार्डिनैलिटी | पंक्तियों की संख्या |
| कुंजी | विशेषता |
|---|---|
| प्राथमिक कुंजी | अद्वितीय, NULL नहीं |
| कैंडिडेट कुंजी | प्राथमिक कुंजी बनने योग्य |
| वैकल्पिक कुंजी | अचुनी गई कैंडिडेट कुंजी |
| विदेशी कुंजी | अन्य तालिका की प्राथमिक कुंजी का संदर्भ |
flowchart TD
A["डेटाबेस"] --> B["DBMS"]
A --> C["रिलेशनल मॉडल"]
A --> D["कुंजियाँ"]
A --> E["संबंध"]
B --> B1["MySQL, Oracle"]
B --> B2["SQLite (पाइथन)"]
C --> C1["तालिका/टपल"]
C --> C2["विशेषता/डोमेन"]
D --> D1["प्राथमिक कुंजी"]
D --> D2["विदेशी कुंजी"]
E --> E1["1:1"]
E --> E2["1:M"]
E --> E3["M:N"]
डेटाबेस आधुनिक सूचना प्रणालियों का केंद्र है। रिलेशनल डेटाबेस में डेटा तालिकाओं के रूप में संग्रहीत होता है, जिसमें टपल (पंक्तियाँ) और विशेषताएँ (स्तंभ) होते हैं। प्राथमिक कुंजी प्रत्येक रिकॉर्ड को विशिष्ट रूप से पहचानती है, जबकि विदेशी कुंजी तालिकाओं के बीच संबंध स्थापित करती है। DBMS डेटा को सुरक्षित, सुसंगत और साझा करने योग्य बनाता है। डिग्री, कार्डिनैलिटी, डोमेन जैसी शब्दावली और कुंजियों की समझ अगले अध्याय (SQL) के लिए आधार है। इन अवधारणाओं की गहरी पकड़ से डेटाबेस से संबंधित सभी प्रश्न आसानी से हल हो सकते हैं।