Data Insertion Anomaly: Music Store जैसे जितने भी Database होते हैं, जैसे कि Publication आदि, इनमें जितने भी Titles होते हैं, उनकी एक List बनती है, जिसके द्वारा ये पता चलता है कि उस Music Store या Publication पर किन-किन Titles के Items उपलब्ध हैं।
उदाहरण के लिए जब भी किसी नए Title की CD/DVD Market में आने वाली होती है, इन Music Store पर उस नए Title को अपने Catalog में Add करना होता है। ठीक इसी तरह से किसी Publication में जब भी कोई नई Book Publish होती है, उस Publication को भी अपने Catalog को Update करना पडता है। एसा इसलिए किया जाता है ताकि Music Store या Book Store के Customers इस नए Title को Advance में Order कर सकें।
Catalog एक एसी List होती है, जिसमें कोई Music Store या Publication अपने Items की List को Store करता है, ताकि वह अपने Customers को इस बात की जानकारी दे सके कि उसके पास कौन-कौन से Title के Item उपलब्ध हैं।
चूंकि हम जिस Music Store Application को उदाहरण के रूप में उपयोग में ले रहे हैं, उसमें विभिन्न Titles के Catalog को Maintain करने की कोई व्यवस्था नहीं है, इसलिए जब भी Market में किसी नए Title के आने की सूचना मिलती है, इस Music Store में एक Employee स्वयं अपने Catalog को Update करता है और अपने Titles के Updated Booklet को अपने हर Customer को भेज देता है, ताकि उनका Customer ये तय कर सके कि उसे कौन-कौन से Title Order करने हैं। इस Catalog Booklet में बहुत सारे Pages हो सकते हैं और हर Page को Music Store का कोई Employee स्वयं “Copy Paste” की प्रक्रिया द्वारा तैयार करता है।
अब मानलो कि हम ये चाहते हैं कि ये Catalog Booklet Database के आधार पर स्वयं ही तैयार हो जाए। चूंकि विभिन्न प्रकार के Titles Database में Stored होते हैं, इसलिए हम Catalog Booklet को Database के आधार पर तैयार कर सकते हैं। लेकिन फिर भी हम Current Database के आधार पर ये काम नहीं कर सकते हैं। इसके दो कारण हैं:
किसी भी Catalog में किसी भी Title से सम्बंधित विभिन्न प्रकार की Additional जानकारियां होती हैं। उदाहरण के लिए किसी Title के Singer, Music Director, Financer आदि की जानकारियां हो सकती हैं और Title से सम्बंधित कुछ Extra Description हो सकती हैं।
चूंकि हमारे Music Store Database में इन जानकारियों को Store करने की व्यवस्था नहीं है, इसलिए इस समस्या के समाधान के रूप में हम हमारे Music Store के Database को Modify करके उसमें नए Fields Create कर सकते हैं।
लेकिन ये तरीका भी पूरी तरह से Catalog Create करने में सक्षम नहीं हो सकता। क्योंकि एक ही Title को बहुत सारे Customers Order कर सकते हैं। इस स्थिति में हर Order के साथ Title की विभिन्न Descriptions को Computer में Store करने से Data की Redundancy बढ जाएगी और यदि केवल एक ही Customer के Order में किसी Title की Information को Store किया जाए तो हमेंशा इस बात को ध्यान रखना होगा कि किस Title की Extra जानकारियों को किस Customer के Order में Specify किया गया है, जो कि एक नामुमकिन काम है।
दूसरी समस्या ये है कि हमारे Music Store Application के Database Management System में एसी कोई व्यवस्था नहीं है, जिससे किसी Title को Advance में ही Database में Enter किया जा सके।
यानी जब तक कोई Customer उस नए Title का Order Place नहीं करता है, तब तक उस Title को Database में Store नहीं किया जा सकता है और जब तक Title Database में Store नहीं होगा, तब तक Updated Catalog Booklet Create नहीं किया जा सकता।
साथ ही Customer तब तक उस Title का Order Place नहीं कर सकता जब तक कि उसे Updated Catalog Booklet प्राप्त ना हो, क्योंकि उसे नए Title की जानकारी Updated Catalog Booklet से ही प्राप्त होती है। इस समस्या को Database Management की भाषा में “Insertion Anomaly” कहा जाता है। (Data Insertion Anomaly)
ये Article इस वेबसाईट पर Selling हेतु उपलब्ध EBook Oracle 8i/9i SQL/PLSQL in Hindi से लिया गया है। इसलिए यदि ये Article आपके लिए उपयोगी रहा, तो निश्चित रूप से ये पुस्तक भी आपके लिए काफी उपयोगी साबित होगी।
Oracle 8i/9i SQL/PLSQL in Hindi | Page: 587 | Format: PDF