2011-09-16 13 views
10

संभव डुप्लिकेट:
Why is database view used?डेटाबेस में देखने का उपयोग करने के क्या फायदे हैं?

के बाद से मैं हमेशा के बजाय एक दृश्य बनाने और इसे से चयन का उपयोग करने का मूल टेबल से कथन का चयन का उपयोग कर सकते, मुझे आश्चर्य है में दृश्य का उपयोग कर के क्या लाभ हैं क्या डेटाबेस?

उत्तर

11

यह कॉल को सरल बनाता है और संकेत की एक परत प्रदान करता है।

इसलिए, यदि आपके पास बहुत से जोड़ों के साथ जटिल चयन है, तो आप इसे एक दृश्य में कार्यान्वित कर सकते हैं और इन सभी जुड़ों पर विचार करने के बिना केवल दृश्य को कॉल कर सकते हैं। फिर आप इस दृश्य का पुन: उपयोग कर सकते हैं।

इसके अतिरिक्त, यदि आप इस तरीके से किसी तालिका के बजाय दृश्य का उपयोग करते हैं, तो भविष्य में यदि आपको कॉलम माइग्रेट करने की आवश्यकता है, तो आप आसानी से ऐसा कर सकते हैं और केवल दृश्य में परिवर्तन की आवश्यकता है।

2

ओडेड के स्पष्ट लाभों के अलावा, आप कभी-कभी materialized views का उपयोग करके गति में तेजी से सुधार कर सकते हैं। विकिपीडिया से:

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

1

कई हैं, लेकिन मुझे लगता है कि मुख्य लाभ यह है कि विचार तार्किक डेटा आजादी के एसक्यूएल कार्यान्वयन हैं।

एक अद्यतन करने योग्य दृश्य बनाएं, और दृश्य का उपयोग करने वाले अनुप्रयोग अंतर्निहित तालिकाओं में परिवर्तनों के लिए अपेक्षाकृत प्रतिरक्षा हैं। अंतर्निहित तालिकाओं की संरचना बदलें, दृश्य परिभाषा अपडेट करें, और सभी एप्लिकेशन काम करते हैं जैसे कुछ भी नहीं हुआ था। (विरासत डेटाबेस पर, वहाँ दर्जनों भाषाओं में लिखित आवेदन के सैकड़ों हो सकता है। यह बड़ा जीत है।)

अन्य लाभों में छिपा डेटा के लिए

"स्वचालित" सुरक्षा (क्रिस दिनांक टीका)। विचारों तक पहुंच प्रतिबंधित करें, और आपके पास कौन सा देखता है, इस पर आपका कल्याणकारी नियंत्रण है।

अनुप्रयोगों के लिए "DRY" क्षमता। एक दृश्य एक जटिल, सार्वजनिक इंटरफेस को जटिल चयन कथन में प्रदान कर सकता है, इसलिए अनुप्रयोग केवल SELECT column-list FROM my-easy-view कर सकते हैं।

विभिन्न उपयोगकर्ता अलग-अलग तरीकों से एक ही डेटा देख सकते हैं।

संबंधित मुद्दे