DBMS में Schema और Instance
दो शब्द जो confuse करते हैं
Schema और instance technical लगते हैं पर अलग करने पर सरल हैं। Schema database का design है — इसकी tables और columns। Instance उसमें अभी का data है। एक योजना है; दूसरा जो अभी उसे भरता है।
Schema क्या है
Schema blueprint है: यह tables, उनके columns, data types और constraints list करता है। यह बताता है data कैसे व्यवस्थित है, ख़ुद data रखे बिना।
students(roll INT PRIMARY KEY, name VARCHAR(50), marks INT)
यह line schema का हिस्सा है — यह students table का आकार define करती है पर कोई असली students नहीं रखती।
Instance क्या है
Instance किसी पल का असली data है:
| roll | name | marks |
|---|---|---|
| 1 | Aman | 88 |
| 2 | Diya | 92 |
ये rows instance हैं। एक और student insert कीजिए और instance बदल जाता है — पर schema (ऊपर की संरचना) बिल्कुल वही रहता है।
मुख्य अंतर
| बात | Schema | Instance |
|---|---|---|
| क्या है | संरचना / design | असली data |
| बदलता है | शायद ही (redesign पर) | अक्सर (हर insert/update) |
| उदाहरण | Table और column definitions | अभी store rows |
| उपमा | खाली form template | भरा हुआ form |
Schema के तीन स्तर
Database schema तीन स्तरों पर मौजूद रहता है (three-schema architecture):
- External schema — हर user या app data कैसे देखता है (views से)।
- Conceptual/logical schema — सारी tables की समग्र संरचना।
- Internal/physical schema — data disk पर असल में कैसे store होता है।
इन स्तरों को अलग करना आपको storage बदलने देता है users को प्रभावित किए बिना।
एक सरल उपमा
एक class attendance register सोचिए। छपा template — roll number, name और present/absent के columns — schema है। किसी ख़ास दिन का register, असली नामों और ticks से भरा, एक instance है। कल का भरा register एक अलग instance है, पर template अपरिवर्तित रहता है।
आम गलतियाँ
- Data को schema कहना। Data instance है; design schema है।
- Schema के data के साथ बदलने की उम्मीद। यह सिर्फ़ redesign पर बदलता है।
- तीन स्तर मिलाना। External = views, conceptual = संरचना, internal = storage।
- यह सोचना एक instance है। हर पल एक अलग instance है।
सारांश
- Schema संरचना है (tables, columns, types)।
- Instance किसी पल का असली data है।
- Schema शायद ही बदलता है; instance लगातार बदलता है।
- Schemas तीन स्तरों पर हैं: external, conceptual, internal।
- Template बनाम भरा form अंतर याद रखने का अच्छा तरीका है।
आगे, स्तर स्वतंत्र कैसे रहते हैं सीखिए data independence में, या समग्र database architecture।
