Define Relationship Set in DBMS: Chen व IE दोनों ही तरीकों के ER Diagrams में Relationship को अलग तरीकों से Represent किया जाता है। दोनो ही तरीकों के अपने फायदे व कमियां हैं। Chen Method में Relationship को Represent करने के लिए Diamond Symbol का प्रयोग किया जाता है और Entities के बीच Relationship के Type को Represent करने के लिए Arrow Based Lines का प्रयोग किया जाता है। उदाहरण के लिए निम्न ER Diagram को देखिएः
इस Diagram में हम Customers व Orders के बीच की Relationship को देख सकते हैं। Customer की तरफ जो Single Arrow Point कर रहा है वह Arrow Indicate करता है कि एक Order केवल एक ही Customer से Belong कर रहा है। जबकि Orders Entity की तरफ का Double Arrow इस बात को Indicate करता है कि एक Customer एक से ज्यादा Orders Place कर सकता है। Diamond के बीच लिखा गया शब्द Relationship के सम्बंध में कुछ जानकारी प्रदान करता है।
Chen Model में दो Alternative Styles हैं। पहले Style में Arrows को Numbers व Letters से Replace कर दिया जाता है। Number “1” ये Indication देता है कि एक Order किसी एक Customer से आता है। जबकि “M” या “N” Character ये Indication देता है कि Customer एक से ज्यादा Orders Place कर सकता है। इस तरीके को Apply करने पर हमें निम्नानुसार Diagram प्राप्त होता हैः
दूसरा Alternative उस Problem का Solution दर्शाता है, जो तब पैदा होती है जब हम Relationship को दोनों Directions में Read करते हैं। यानी “Customer Places Order” तो एक Meaningful Information है लेकिन “Order Places Customer” किसी तरह की कोई Meaningful Information प्रदान नहीं करता है। इस समस्या को Solve करने के लिए ER Diagram में Diamond से Relationship Represent करने वाले Arrows व Relationship के नाम को Remove कर दिया जाता है और Diagram को निम्नानुसार Inverse कर लिया जाता हैः
अब ये Diagram ज्यादा Meaningful Information Provide करता है, जो निम्नानुसार है कि :
1 Customer M Orders Place कर सकता है। यानी
“1 Customer Places Many Orders“ और
1 Order केवल 1 Customer ही Place कर सकता है। यानी
“1 Order is Placed by 1 Customer“
Chen के Model में एक बहुत ही बडी Limitation है और वो है ER Diagram को Draw करने की। Chen के ER Diagram में किसी Weak Entity व Mandatory Relationship को Represent करने का कोई स्पष्ट तरीका नहीं है। उदाहरण के लिए Music Store Database के लिए Order एक Weak Entity है और बिना किसी Customer के ये Entity Database में Store नहीं किया जा सकता और Customer Entity के साथ इसकी Relationship जरूरी यानी Mandatory है।
कुछ Database Designers ने Chen Method में एक नया Symbol Add किया है जिसमें किसी Weak Entity को निम्नानुसार एक Double Bordered Rectangle द्वारा दर्शाया जाता हैः
जब भी कभी किसी ER Diagram में किसी Weak Entity को Represent किया जाता है, तब ये Symbol इस बात को Indicate करता है कि ये Entity व इसके एक Parent Entity दोनों के बीच में Mandatory Relationship है। लेकिन यदि इस Entity के साथ एक से ज्यादा Parent Entities Related हों, तो इस बात को सामान्य तरीके से तय करना मुश्किल हो जाता है कि कौनसे Entity के साथ इस Weak Entity की Relationship Mandatory है।
Chen Method के अलावा हम Information Engineering Method को Use करके भी ER Relationship Model को Create कर सकते हैं। IE Method में Line के End के आधार पर ही विभिन्न प्रकार की Relationships को Represent किया जाता है, जो कि Chen के Method की तुलना में ER Diagram को ज्यादा सरल बना देता है। उदाहरण के लिए निम्न चित्र में उसी One To Many Relationship को दर्शाया गया है, जिसे हमने Chen के Method द्वारा दर्शाया है। इस चित्र में Line के End के आधार पर हम इस बात का पता लगा सकते हैं कि कौनसी Relationship Mandatory है और कौनसा Entity एक Weak Entity है।
Customer Entity के आगे जो दो खडी Lines (||) हैं, उनका मतलब ये होता है कि हर Order सिर्फ और सिर्फ एक Customer से Related है। चूंकि 0 Optional नहीं है, इसलिए इन Entities के बीच की Relationship Mandatory है। इसी तरह से Order Entity के साथ Connect किए गए 0 व तीन Legs का मतलब ये है कि एक Customer Zero, One या More Orders से Related हो सकता है। एक IE Diagram में Line के अन्त में मुख्यतः चार Symbols को Use किया जा सकता हैः
- || : One and Only One (Mandatory Relationship)
- 0| : Zero or One
- >| : One or More (Mandatory Relationship)
- >0 : Zero, One or More
अब यदि हम Music Store Database के विभिन्न Entities के बीच की Relationships को IE Diagram द्वारा Represent करें, तो बनने वाला Diagram निम्नानुसार बनेगाः
इस IE Diagram द्वारा निम्न Relationships Model हो रहे हैं:
एक Customer Zero, One या More Orders Place कर सकता है जबकि एक Order एक और सिर्फ एक Customer द्वारा Place किया जा सकता है।
एक Order में एक या एक से ज्यादा Items हो सकते हैं जबकि एक Item Zero, One या More Orders में Appear हो सकता है।
- एक Actor Zero, One या More Items में Appear हो सकता है और इसी तरह से एक Item में Zero, One या More Actors हो सकते हैं। (कई बार ऐसी Films भी बनती हैं, जिनमें Human Actors के स्थान पर Animal Actors होते हैं। इसलिए हमेंशा ये जरूरी नहीं होता है कि हर Item कम से कम एक Actor से Related हो।)
- हर Item के Zero, One या More Producers हो सकते हैं और हर Producer Zero, One या More Items के लिए Responsible होता है। हालांकि हम Practically तब तक किसी Producer को Database में Store नहीं करते हैं, जब तक कि वह Producer किसी Item से Related ना हो। Producer व Items के बीच की Relationship को Optional Means के रूप में Specify करके हम बिना Item की Information Store किए हुए भी Producer की Information को Database में Store कर सकते हैं।
इस Design में Notice करने वाली जो सबसे बडी चीज है वो ये है कि इस Design में तीन Many To Many Relationships हैं, जो कि Order To Item, Actor To Item व Producer To Item के Entity के बीच है। इससे पहले कि हम इस Data Model को किसी Relational Database पर Map करें, इन्हें किसी अन्य तरीके से Handle करना होगा, क्योंकि किसी भी Relational Database में हम Many To Many Relationship को Directly Map नहीं कर सकते हैं। (Define Relationship Set in DBMS)
ये Article इस वेबसाईट पर Selling हेतु उपलब्ध EBook Oracle 8i/9i SQL/PLSQL in Hindi से लिया गया है। इसलिए यदि ये Article आपके लिए उपयोगी रहा, तो निश्चित रूप से ये पुस्तक भी आपके लिए काफी उपयोगी साबित होगी।
Oracle 8i/9i SQL/PLSQL in Hindi | Page: 587 | Format: PDF