कम्प्युटरडेटाबेस

एक धेरै-गर्न-धेरै: उदाहरण पहुँच एउटा, SQL मा। कसरी धेरै-गर्न-धेरै बनाउने?

सबै DBMS (डेटाबेस व्यवस्थापन प्रणाली) , टेबल बीच सम्बन्ध धेरै प्रकार छन्। तिनीहरूमध्ये एक-गर्न-एक, एक-गर्न-धेरै, धेरै-गर्न-एक र धेरै-गर्न-धेरै (केही एक मा यी दुई प्रकार पहिचान गर्न इच्छुक छन्)। उत्तरार्द्ध एउटा उदाहरण र यस्तो पहुँच वा SQL रूपमा फरक डेटाबेस यसको आवेदन एक विवरण, यस लेखमा छलफल गरिनेछ।

परिभाषा

धेरै-गर्न-धेरै सम्बन्ध अन्य सबै उदाहरणहरु को सुगंध को एक को प्रतिहरू को कुनै पनि एउटा मिलान रूपमा परिभाषित गरिएको छ। अर्को शब्दमा, पहिलो (दोस्रो) दोस्रो (पहिलो) को सबै क्षेत्रहरू सम्बन्धित तालिका प्रत्येक क्षेत्र।

यो योजना स्पष्ट यस सम्बन्ध सार झल्काउँछ।

जब धेरै-गर्न-धेरै सम्बन्ध प्रयोग गर्न सकिन्छ एक?

एउटा उदाहरण एक धेरै-गर्न-धेरै - एक विद्यार्थी समूह र शिक्षकहरूको एउटा समूह। प्रत्येक विद्यार्थी केही प्राध्यापकहरू, जो, बारी मा, लेक्चर धेरै विद्यार्थी दिन मा एकैचोटि बुझ्छ। चित्रमा एक-गर्न-धेरै र धेरै-गर्न-धेरै भिन्नता छ देखाउँछ।

धेरै-गर्न-धेरै सम्बन्ध यो बाहिर जान्छ व्यवहार मा, अक्सर ठूलो मात्रा डेटाबेस उदाहरणात्मक सानो उदाहरण सामान्यतया वास्तविकता मा, मात्र शैक्षिक उद्देश्यका लागि प्रयोग को तयारी मा आवश्यक छ भनेर तिनीहरूलाई बीच डेटाबेस मा थप संस्थाहरू र थप सम्बन्धमा - गर्न बारम्बार recourse को likelihood अधिक धेरै-गर्न-धेरै।

कसरी धेरै-गर्न-धेरै बनाउने?

प्रश्न मा सम्बन्ध उदाहरणहरू अझै पनि लेख को पाठ्यक्रम थपिनेछ, तर यो के हो बुझ्न मात्र होइन, तर पनि कसरी लागू गर्न महत्त्वपूर्ण छ। यो प्रक्रिया विवरण सीधा सिद्धान्त लागि नै रहन्छ, जबकि, काम को लागि चयन डेटाबेस मा निर्भर गर्दछ।

Microsoft पहुँच

"माइक्रोसफ्ट" बाट कार्यालय सफ्टवेयर एकदम लामो समय को लागि सफ्टवेयर बजार मा जानिन्छ। यो एउटा पाठ सम्पादक Worfd, एक्सेल टेबुलर प्रोसेसर र अन्य "कार्यालय" को लाइन स्वामित्वको आउँछ। खरिद र आफ्नो "सहकर्मी" बाट अलग गर्न - तपाईं ( "पहुँच" "acces", शाब्दिक अनुवाद रूपमा पढ्नुहोस्) पहुँच गर्न सक्नुहुन्छ। यो किन्न, को पाठ्यक्रम, इजाजतपत्र प्राप्त सफ्टवेयर सिफारिस गरिएको छ, तर यो कुनै गोप्य pirated repack, विशाल वेब पाउन सकिन्छ कति नियमित फाइलहरू वा बग्नेछन् हात को रूप मा छ। "माइक्रोसफ्ट Acces" पनि एउटा पोर्टेबल विधानसभा मा उपलब्ध छ। सफ्टवेयर चिरकालीन प्रयोग गरिने छैन भने र अक्सर यो एक पीसी काम गर्न स्थापना र कुनै पनि विशेष सीप आवश्यकता छैन, यो चयन लागि सबै भन्दा राम्रो अनुकूल छ।

एक - सन्दर्भ देखि यो छ कि "माइक्रोसफ्ट Acces" स्पष्ट छ डेटाबेस व्यवस्थापन प्रणाली। र सबै भन्दा लोकप्रिय मध्ये एक। यो जसको अर्थ यो तार्किक आधारित छ, संबंधात्मक छ डाटा मोडेल, आफ्नो काम को पाठ्यक्रम छ जो बुझाउँछ सेट सिद्धान्त र पहिलो अर्डर तर्क। धेरै-गर्न-धेरै पहुँच मा सम्बन्ध (उदाहरण को व्याख्यामा दिइनेछ) धेरै, धेरै सरल बुझे छ। यसलाई विचार गर्नुहोस्।

त्यहाँ दुई टेबल हो ..

केहि नयाँ आविष्कार गर्न क्रममा, विद्यार्थी बारे उदाहरण धेरै-गर्न-धेरै व्याख्या गर्न पहिले नै उल्लेख लिन। तपाईं तालिका "विद्यार्थी" र तालिका सिर्जना गर्नुपर्छ "शिक्षक।" दुवै पहिलो र यी को दोस्रो प्राथमिक कुञ्जी हो। पहिलो र दोस्रो टेबल साँचाहरू - पनि दुई संस्थाहरू उदाहरणहरु संयोजन लागि क्षेत्रहरू जो अर्को तालिका, आवश्यक छ।

हामी फरक उदाहरण विचार भने: खेलाडी र टोली (कम्तीमा फरक टोलीका लागि प्ले खेलाडी को एक, र प्रत्येक टोली एघार खेलाडीहरू बनेको छ भन्ने तथ्यलाई दिइएको), जडान निर्माण गर्दै परिवर्तन हुनेछ, गरेको भन्न गरौं। तिनीहरूले पनि तीन टेबल आवश्यक हुनेछ। यी को, "फुटबल" र मुख्य रूपमा "टोली" र एक मध्यवर्ती।

डाटा योजना

डाटाबेस "माइक्रोसफ्ट Acces" मा तालिकाहरू बीचको सम्बन्ध ट्याब "डाटा योजना" को प्रयोग गरेर कार्यान्वयन। प्रदर्शन प्यानल सबै संस्थाहरू (यस मामला मा, सबै तीन टेबल) थपिएको छ। मुख्य बीच एक धेरै-गर्न-धेरै दुई सम्बन्धमा प्रयोग गरिनेछ, एक-गर्न-धेरै सम्बन्ध ( "विद्यार्थी" र "शिक्षक") र चरणबद्ध तालिका सिर्जना गर्नुहोस्। यसो गर्न, तपाईं सम्बन्धित प्राथमिक कुञ्जी आपस पर्छ।

माथिको दृष्टान्त देखाउँछ कसरी ट्याब "डाटा सर्किट" (Relathionships)। को संख्या अनिश्चितकालीन तालिका बोर्ड थपियो। स्थान पूर्ण प्रयोगकर्ता द्वारा समायोज्य छ।

SQL

SQL मा डेटाबेस डिजाइन - "Acces" भन्दा कठिन कार्य। maykrosoftovskih उत्पादन पूरै कार्यालय वातावरण अनुकूल छ भने, प्रत्येक रिलीज संग, एक विशाल छ र सबै एक्स्टेन्सिबल कार्यक्षमता अद्यावधिक र, तर सरल प्रयोगकर्ता इन्टरफेस, SQL लागि सुविधाजनक एकै समयमा - यो एक अलग गैर-प्रक्रियागत कार्यक्रम भाषा हो, फरक प्लेटफर्ममा जो संग तपाईं डेटाबेस संग काम गर्न सक्छन्। यो कार्य को लागि चिरपरिचित सफ्टवेयर: Oracle MySQL र DB2 (एक लोकप्रिय, तर आफ्नो तरिका को केवल एक)। तिनीहरूलाई प्रत्येक यसको subtleties र nuances छ भन्ने तथ्यलाई बावजुद एसक्यूएल भाषा आफ्नो "संयुक्त" छ। अरूलाई सामना गर्न धेरै सजिलो हुनेछ, तिनीहरूलाई कम्तिमा एक साथ काम गर्न सिक्दै द्वारा।

सिर्जना, भर्न र SQL मा अवस्थित डेटाबेस मा प्रत्यक्ष कार्यहरू विशेष कोड वा लिपि मार्फत आवश्यक। तथापि, पहिले नै खण्ड यसलाई गरेका छन् गर्नेहरूलाई "धेरै-गर्न-धेरै", यो कार्यक्रम भाषामा तल दिइएको छ जो एउटा उदाहरण, एसक्यूएल भाषा को कम से कम आधारभूत आदेशहरू र सिद्धान्तहरू थाहा हुनुपर्छ।

एक धेरै-गर्न-धेरै सिर्जना सिद्धान्त

लामो समयसम्म अभिवृद्धि केही बाधा हालन सक्छ र "कुहिरो unleash", तर वास्तवमा संचार को कार्यान्वयन को सिद्धान्त नै रहनेछ। मध्यवर्ती - व्यवहार मा एक सम्बन्ध धेरै-गर्न-धेरै टाइप गर्न कार्यान्वयन गरिएको छ, छैन केवल "Acces", तर पनि SQL मा, सुरुमा दुई आधार टेबल र सिर्जना गर्न आवश्यक छ। त्यस्तै, यो प्रमुख छ: आधारभूत प्रकृति मुख्य क्षेत्रहरू, को लिंक गर्ने कार्य तालिकामा रेकर्ड गरिएको छ प्रत्येक जो छन्। जो SQL-धेरै-गर्न-धेरै सम्बन्ध भएको "Acces" बाट मौलिक अलग छैनन् भन्ने हो।

संचार को कार्यान्वयन

लागू गर्न एक धेरै-गर्न-धेरै बाह्य कुञ्जीहरू (विदेश प्रमुख) मुख्य तालिकामा मूल प्रमुख समान प्रयोग गरेर SQL लिपि मा। र / वा सम्पादन सिर्जना गर्दा तिनीहरू सबै क्षेत्रहरू मिलेर रेकर्ड भयो।

एक धेरै--धेरै को भूमिका

सामान्य मा, मा संस्थाहरू बीच सम्बन्ध डेटाबेस तिनीहरूलाई भण्डारण गरिएका जानकारी निष्ठा लागि प्रयोग। केवल एक सबै आवश्यक जडानहरू संग राम्ररी डिजाइन गरिएको डेटाबेस सुरक्षित भण्डारण, प्रयोगकर्ता अनुभव सुनिश्चित र बाह्य प्रभावको र परिवर्तन गर्न प्रतिरोधी छ कि एक संरचना हो। सामान्यतया, डाटाबेस सम्पूर्ण संगठन, कम्पनी वा दृढ मा डाटा समावेश छ भने, यो फरक उदाहरणहरू संग संस्थाहरू एक सेट छन्।

यो यी योजनाहरू को तयारी ( "Acces") वा (को "Oracle" वा "DiBiTu" मा) लेखन लिपि मा उपस्थित हुनेछ भन्ने हो कम से कम एक धेरै-गर्न-धेरै। उदाहरणका SQL, अक्सर प्रयोग गरिएको छ तालिम "डाटाबेस संगठन" मा - DB राजा।

राजा डाटा को आधार

प्रशिक्षण डेटाबेस राजा निगम बारेमा जानकारी छ। को टेबल बीच:

  • कम्पनी को कर्मचारीहरु - कर्मचारी आईडी, थर, नाम र मध्य प्रारम्भिक (विदेशी नाम मा ध्यान), पनि हाकिम लागि कोड र स्थिति कब्जा कर्मचारी, आफ्नो तलब र आयोग प्राप्त गर्ने कम्पनीहरु गर्न भर्ना मिति प्रदान विभाग कोड समावेश;
  • निगम को विभाग - तालिका को क्षेत्रहरू बीच कोड र विभाग को नाम, साथै यसको स्थान को कोड छ;
  • नियुक्ति विभाग, जो कोड नियुक्ति र शहर को नाम मा जानकारी प्रविष्ट शामिल;
  • कम्पनी मा स्थिति - दुई क्षेत्रहरू संग एउटा सानो तालिका कोड पोस्ट र यसको आधिकारिक नाम;
  • कम्पनीहरु-खरीदारों - क्षेत्रहरू: कोड र खरीदार, ठेगाना, शहर, राज्य, जिप कोड र क्षेत्र कोड, फोन नम्बर को नाम, ग्राहक कोड को सेवा प्रबन्धक, खरीदार र टिप्पणीहरू (टिप्पणी र टिप्पणीहरू) को लागि क्रेडिट;
  • कोड र सम्झौता को मिति, खरीदार कोड, वितरण मिति र सम्झौता को कुल रकम समावेश बिक्री सम्झौताहरू,;
  • बिक्री को प्रेरित - कोड को कार्य र कार्य, उत्पादन कोड, यसको मूल्य, मात्रा खरिद र कुल खरिद लागत समावेश जो सम्झौता, को कोड;
  • माल - उत्पादन को कोड नाम;
  • मूल्य - उत्पादन कोड, मूल्य, कम सम्भव मूल्य, स्थापना मिति र रद्द मूल्य को मिति उहाँलाई घोषणा।

सानो तालिका उपलब्ध जसमा दुई वा तीन कुनै अधिक क्षेत्रहरू माथि को तालिका गर्न सम्बन्धित एक-गर्न-एक वा एक-गर्न-धेरै एक।

मात्रा नै तालिका यस्तो, "कम्पनी को कर्मचारीहरु", "कम्पनी-उपभोक्ताहरु" "बिक्री सम्झौताहरू" र "बिक्री को प्रेरित" को रूपमा, धेरै संस्थाहरू सम्बद्ध केही - "मध्यस्थ" को मद्दत सम्बन्ध धेरै-गर्न-धेरै संग। तालिका "कम्पनी को खरीदारों" नै एक मध्यस्थ, जस्तै, यो क्षेत्र थुप्रै छ किनभने, अन्य टेबल र विदेशी प्रमुख लिइएका छ। साथै, मात्रा र सम्बन्ध डेटाबेस "राजा निगम" सबै सम्बन्ध inextricably प्रत्येक अन्य संग correlated र एक अर्को असर हो। तिनीहरूलाई कम्तिमा एक विनाश सम्पूर्ण डेटाबेस को निष्ठा विनाश निम्त्याउन हुनेछ।

महत्त्वपूर्ण nuances

एक धेरै-गर्न-धेरै लागू गर्दा, जो डेटाबेस व्यवस्थापन प्रणाली प्रयोग गरिन्छ बिना यसलाई आएको गरिनेछ मनोवृत्ति जो संग सही कुञ्जीहरू निर्धारण गर्न महत्त्वपूर्ण छ। गलत तरिकाले यसको मुख्य उद्देश्य पूरा गर्दैन जडान कार्यान्वयन - अर्थात्, तालिका को निष्ठा सुनिश्चित गर्न, र फलस्वरूप, अपेक्षित सान्त्वना सट्टा, प्रयोगकर्ता, अर्कोतर्फ सम्पादन टेबल र आफ्नो डाटा को भरने समयमा प्राप्त हुनेछ, असुविधाको र अतिरिक्त समस्या, विशेष प्रस्ट।

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 ne.unansea.com. Theme powered by WordPress.