LibreOffice-Suite-Base/C4/Database-Design-Primary-Key-and-Relationships/Hindi

From Script | Spoken-Tutorial
Revision as of 19:37, 2 December 2012 by Pravin1389 (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Visual Cue Narration
00:00 लिबरऑफिस बेस पर इस स्पोकन ट्यूटोरियल में आपका स्वागत है।
00:04 यह ट्यूटोरियल डेटाबेस डिजाइन पर पिछले ट्यूटोरियल के आगे का भाग है।
00:10 और यहाँ हम निम्न विषयों को सीखेंगे:
00:13 4. सूचना आइटम्स को कॉलम्स में बदलना।
00:17 5. प्राईमारी कीज़ उल्लिखित करना।
00:20 6. टेबल रिलेशनशिप्स (रिलेशनशिप्स) को स्थापित करना।
00:23 पिछले ट्यूटोरियल में, हमने एक सरल Library एप्लिकैशन के लिए डेटाबेस डिजाइन की प्रक्रिया को शुरू किया था।
00:30 हमने पहले लाइब्रेरी डेटाबेस को बनाने के उद्देश्य का पता लगाया था।
00:36 फिर हमने लाइब्रेरी के बारे में सूचना खोज कर और सुव्यवस्थित करके अपनी प्रक्रिया को जारी रखा।
00:44 और हमने सूचना को टेबल्स में बाँटा।
00:49 और इस तरह, हमने अपनी लाइब्रेरी डेटाबेस में चार टेबल्स निर्धारित किये थे: Books, Authors, Publications और Members.
01:00 अब अगले स्टेप पर चलते हैं, जो है सूचना आइटम्स को कॉलम्स में बदलना।
01:07 यहाँ, हम तय करेंगे कि किस सूचना आइटम को हम प्रत्येक टेबल में संचित करना चाहते हैं।
01:13 प्रत्येक सूचना आइटम जिसे हमने पहले निर्धारित किया था, एक फील्ड बन गयी है, और टेबल में एक कॉलम के रूप में प्रदर्शित है।
01:23 जैसा कि स्क्रीन पर चित्र में दर्शाया गया है, Books टेबल में 5 कॉलम्स हैं, जिन्हें फील्ड्स भी कहते हैं।
01:31 अतः यहाँ प्रत्येक रो या रिकॉर्ड अपने कॉलम्स में वास्तव में एक पुस्तक के बारे में सूचना रखते हैं।
01:40 उसी प्रकार से, Authors टेबल में प्रत्येक रिकॉर्ड केवल एक रचयिता की सूचना रखता है।
01:49 और Publishers टेबल में प्रत्येक रिकॉर्ड केवल एक प्रकाशक की सूचना रखता है।
01:58 अब, आगे हम कॉलम्स को अपनी ज़रूरतों के अनुसार सुधार सकते हैं।
02:04 उदाहरणस्वरुप, हम Author name को First Name और Last Name में अलग कर सकते हैं, जिससे कि हम इन कॉलम्स के जरिये खोज या क्रमबद्ध कर सकें।
02:17 और हमें गणनाओं के परिणाम टेबल्स में अलग कॉलम्स में रखने की आवश्यकता नहीं है।
02:24 क्योंकि जब हम परिणामों को देखना चाहते हैं, बेस तब गणना कर सकता है।
02:31 अब हमें टेबल्स और कॉलम्स के बारे में स्पष्ट है, आगे देखते हैं कि कैसे हम प्राइमरी कीज़ उल्लिखित कर सकते हैं।
02:41 प्राइमरी की क्या है?
02:44 प्रत्येक टेबल एक कॉलम या कॉलम्स के समूह को सम्मिलित करना चाहिये, जो विशिष्ट रूप से टेबल में संचित प्रत्येक रो को बतलाती है।
02:54 यह कॉलम या कॉलम्स के समूह को टेबल की प्राइमरी की है।
03:00 यह प्रायः एक विशिष्ट पहचान संख्या होती है, जैसे Book Id या एक Author Id.
03:08 हम प्राइमरी की फील्ड्स को बहु-टेबल्स के लॉजिकल सम्बन्धित डेटा से जल्दी संघटित करने के लिए इस्तेमाल कर सकते हैं और डेटा को अपने लिए साथ में ला सकते हैं।
03:21 और प्राइमरी की में हमारे पास समरूपी वेल्युस नहीं हो सकती।
03:26 उदाहरणस्वरुप, हम लोगों के नामों को प्राइमरी की की तरह इस्तेमाल नहीं कर सकते, क्योंकि नाम यूनिक (अद्वितीय) नहीं होते हैं।
03:34 यहाँ एक ही टेबल में एक ही नाम के दो लोग हो सकते हैं।
03:40 आगे, प्राइमरी की में हमेशा एक वेल्यू होनी चाहिए।
03:45 यदि यह खाली या निरर्थक है, तो हम इसे प्राइमरी की नहीं मान सकते हैं।
03:52 और हम एक ‘AutoNumber’ के रूप में कॉलम का डेटा टाइप निर्धारित करके प्राइमरी की कॉलम पर हमेशा एक वेल्यू बना सकते हैं जो बेस स्वतः ही बनाएगा।
04:09 जैसा कि स्क्रीन पर चित्र में दर्शाया गया है, हम अपने टेबल्स के प्राइमरी कीज़ निम्न प्रकार से निर्धारित कर सकते हैं:
04:20 Books टेबल के लिए BookId,
04:24 Authors टेबल के लिए AuthorId,
04:28 Publishers टेबल के लिए PulishersId
04:33 उसी प्रकार से, भले ही यहाँ दर्शाया नहीं गया है, Members टेबल के लिए MembersId प्राइमरी की होगी।
04:42 अंततः, टेबल्स में प्राइमरी कीज़ निर्धारित करके, हम एंटिटी इंटिग्रिटी लागू कर रहे हैं।
04:52 एंटिटी इंटिग्रिटी सुनिश्चित करता है कि यहाँ टेबल में समरूपी रेकॉर्ड्स नहीं हैं।
05:00 यह, यह भी सुनिश्चित करता है कि फील्ड जो टेबल में प्रत्येक रिकॉर्ड को पहचानती है वह यूनिक हैं और कभी निष्प्रभाव नहीं होते।
05:10 अब हमारे पास तीन टेबल्स में प्राईमरीज़ कीज़ हैं, हम रिलेशनशिप्स को स्थापित करके इन सबको एक साथ ला सकते हैं।
05:20 चूँकि, बेस इस संकल्पना का समर्थन करता है। इसे रिलेशनल डेटाबेस मैनेजमेंट कहते हैं, संक्षिप्त में RDBMS.
05:32 यहाँ कुछ प्रकार के रिलेशनशिप्स हैं और हम उन्हें अभी देखेंगे।
05:37 सबसे पहले हम देखेंगे कि One-to-Many रिलेशनशिप्स क्या है।
05:43 दिख रहे चित्र में Books और Authors टेबल्स को अभी देखते हैं।
05:49 एक पुस्तक वास्तव में एक रचयिता द्वारा लिखी गयी है।
05:55 अब, यहाँ उदाहरण हैं कि जहाँ दो या कई लोग एक ही पुस्तक के सह-लेखक होते हैं।
06:02 किन्तु, हम अपने उदाहरण को केवल एक ही व्यक्ति द्वारा एक ही पुस्तक को रचने तक सीमित करते हैं।
06:10 अपने उदाहरण के साथ जारी रखते हैं, कि एक रचयिता कई पुस्तकें लिख सकता है।
06:17 अतः Authors टेबल में दिखलाये जा रहे एक रचयिता के लिए, यहाँ पर Books टेबल में रचयिता के द्वारा लिखी गयी काई सारी पुस्तकें हो सकती हैं।
06:28 इसलिए यह one-to-many रिलेशनशिप है।
06:32 और हम इसे अपनी Library डेटाबेस में दर्शा सकते हैं-
06:36 Author Id को लेकर जोकि Authors टेबल में प्राइमरी की है और उसको Books टेबल में जोड़कर।
06:46 अतः Books टेबल में Author Id को फॉरेन(Foreign) की कहते हैं।
06:53 उसी तरह से Publisher Id जोकि Publishers टेबल में प्राइमरी की है यह Books टेबल में जोड़कर फॉरेन की बन जाती है।
07:06 अतः कॉलम या कॉलम्स के समूह को बाँटने से, हम डेटाबेस में one-to-many रिलेशनशिप्स को दर्शा सकते हैं।
07:17 और फॉरेन कीज़ का इस्तेमाल करके टेबल रिलेशनशिप्स को निर्धारित कर सकते हैं।
07:23 अतः रिलेशनशिप स्थापित करने के लिए टेबल में एक प्राइमरी की को अन्य टेबल में एक फॉरेन की की तरह दर्शा सकते हैं।
07:34 फलस्वरूप हम रेफ्रेंशियल इंटिग्रिटी को लागू करते हैं।
07:39 मतलब, टेबल में प्रत्येक फॉरेन की वेल्यू सम्बन्धित टेबल्स में अनुकूल प्राइमरी की वेल्यू होगी।
07:50 आगे, देखते हैं कि Many-to-Many रिलेशनशिप क्या होता है।
07:56 अब टेबल डिजाइन विंडो में वापस जाते हैं।
07:59 एक पुस्तक जितने चाहे उतने लाइब्रेरी सदस्यों को जारी की जा सकती है, (यह मानते हुए कि यहाँ पर कई सारी प्रतियाँ उपलब्ध हैं)
08:09 उसी प्रकार से एक सदस्य कितनी भी चाहे पुस्तकें ले सकता है(अवश्य ही, यह मानते हुए कि, पुस्तकें उपलब्ध हैं)
08:17 अतः यहाँ हमारे पास कई पुस्तकें कई सदयों को जारी करने का एक उदाहरण है।
08:25 जो Many-to-many रिलेशनशिप को दर्शाता है।
08:29 अतः हम इस many-to-many रिलेशनशिप को अपने डेटाबेस में दर्शा सकते हैं।
08:35 एक तीसरी टेबल, BooksIssued बना कर, जिसे जंक्शन टेबल भी कहते हैं।
08:45 और यहाँ, हम प्रत्येक दोनों टेबल्स- Books और Members से प्राइमरी कीज़ को- BooksIssued टेबल में प्रविष्ट करेंगे।
08:57 इसकी वजह से, BooksIssued टेबल सदस्य को जारी की गयी प्रत्येक पुस्तक को रिकॉर्ड करता है।
09:05 अतः तीसरा जंक्शन टेबल बनाकर, हम many-to-many रिलेशनशिप्स को दर्शा सकते हैं।
09:13 और आखिर में यहाँ One-to-one रिलेशनशिप है।
09:18 कभी-कभी, कुछ एट्रिब्यूट्स या कॉलम्स केवल कुछ विशेष डेटा के लिए निश्चित होते हैं और इसलिए कदाचित डेटा से भरे जाते हैं।
09:30 चलिए एक उदाहरण देखते हैं जिसमें केवल एक रचयिता के पास वेबसाइट एड्रेस है और बाकी के पास नहीं।
09:38 और Authors टेबल में नई वेबसाइट कॉलम को ज्यादातर खाली छोड़ने से, हम डिस्क स्पेस बर्बाद कर रहे हैं।
09:47 अतः हम इस कॉलम को एक नई अतिरिक्त टेबल स्थानांतरित कर सकते हैं, जिसकी प्राइमरी की वही Author Id होगी।
09:58 अतरिक्त टेबल में प्रत्येक रिकॉर्ड वास्तव में मुख्य टेबल के एक रिकॉर्ड के अनुरूप होगा।
10:06 जो One-to-one रिलेशनशिप को दर्शाता है।
10:10 अतः यहाँ, हमने अपने डेटाबेस में रिलेशनशिप्स को स्थापित करना सीखा।
10:15 इसी के साथ हम लिबरऑफिस में डेटाबेस डिजाइन के दूसरे भाग के इस ट्यूटोरियल की समाप्ति की ओर आ गये हैं।
10:23 संक्षिप्त में, हमने डेटाबेस डिजाइन में निम्न विषय सीखें:
10:28 4. सूचना आइटम्स को कॉलम्स में बदलना
10:32 5. प्राइमरी कीज़ उल्लिखित करना ।
10:34 6. टेबल रिलेशनशिप्स को स्थापित करना।
10:38 स्पोकन ट्यूटोरियल प्रोजेक्ट टॉक-टू-अ-टीचर प्रोजेक्ट का हिस्सा है, यह भारत सरकार के एमएचआरडी के “आईसीटी के माध्यम से राष्ट्रीय साक्षरता मिशन” द्वारा समर्थित है।
10:48 यह प्रोजेक्ट http://spoken-tutorial.org. द्वारा संचालित है।


10:54 इस पर अधिक जानकारी निम्न लिंक पर उपलब्ध है।
10:58 आई.आई.टी बॉम्बे की ओर से मैं रवि कुमार अब आपसे विदा लेता हूँ। हमसे जुड़ने के लिए धन्यवाद।

Contributors and Content Editors

Pravin1389