यह एक टिप्पणी के लिए थोड़ा लंबा है। आप कहते हैं:
<ब्लॉकक्वॉट>यदि अंतर्निहित तालिका स्तंभ नाम बदलते हैं, तो दृश्य के उपयोगकर्ताओं को अपना कोड संपादित करने की आवश्यकता नहीं होगी
वैसे यह सच है। यदि अंतर्निहित कॉलम नाम बदलते हैं, तो दृश्य अमान्य हो जाएगा। कोड अब काम नहीं करेगा। आपको वैसे भी दृश्य को फिर से बनाना होगा।
यदि आप कॉलम नामों को सुनिश्चित करना चाहते हैं, तो आप स्पष्ट रूप से view दृश्य बना सकते हैं कॉलम नामों के साथ:
Create view vBook1 (ISBN, Title) AS
SELECT ISBN, Title
FROM dbo.tBook;
मैं आम तौर पर इस दृष्टिकोण का बहुत बड़ा प्रशंसक नहीं हूं - यह दृश्य के लिए कॉलम नामों को जोड़ने या फिर से व्यवस्थित करते समय कहर बरपा सकता है। लेकिन आप इसकी सराहना कर सकते हैं।
ध्यान दें कि मैंने ORDER BY
. को हटा दिया है और TOP 100 PERCENT
. ये ORDER BY
प्राप्त करने के लिए हैक हैं SQL सर्वर कंपाइलर द्वारा स्वीकार किया गया। इसका मतलब यह नहीं है कि दृश्य किसी विशेष क्रम में होने की गारंटी है।
इसे दस्तावेज़ीकरण :
<ब्लॉकक्वॉट>महत्वपूर्ण
ORDER BY क्लॉज का उपयोग केवल उन पंक्तियों को निर्धारित करने के लिए किया जाता है जो दृश्य परिभाषा में TOP या OFFSET क्लॉज द्वारा लौटाई जाती हैं। ORDER BY खंड दृश्य के क्वेरी किए जाने पर आदेशित परिणामों की गारंटी नहीं देता है , जब तक कि ORDER BY भी क्वेरी में ही निर्दिष्ट न हो।