Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

SQL सर्वर 2017 में एक दृश्य बनाएँ

SQL सर्वर में, आप किसी क्वेरी को दृश्य के रूप में सहेज सकते हैं। दृश्य सुरक्षा, उपयोगिता और सुविधा सहित कई कारणों से फायदेमंद होते हैं।

SQL सर्वर में, एक दृश्य एक वर्चुअल टेबल है जिसकी सामग्री को एक क्वेरी द्वारा परिभाषित किया जाता है। यह मूल रूप से एक पूर्व-लिखित क्वेरी है जो डेटाबेस पर संग्रहीत होती है।

एक दृश्य में SELECT होता है कथन, और जब आप दृश्य के विरुद्ध कोई क्वेरी चलाते हैं, तो आप इसके परिणाम वैसे ही देखते हैं जैसे आप तालिका खोलते समय देखते हैं। दृश्यों को वर्चुअल टेबल के रूप में संदर्भित किया जाता है क्योंकि वे कई तालिकाओं के साथ-साथ कुल डेटा से डेटा खींच सकते हैं, और इसे एक ही तालिका के रूप में प्रस्तुत कर सकते हैं।

दृश्यों के लाभ

एक दृश्य तब उपयोगी हो सकता है जब एक्सेस के विभिन्न स्तरों वाले कई उपयोगकर्ता हों, जिन्हें सभी को डेटाबेस में डेटा के हिस्से देखने की आवश्यकता होती है (लेकिन जरूरी नहीं कि सभी डेटा)। दृश्य निम्न कार्य कर सकते हैं:

  • तालिका में विशिष्ट पंक्तियों तक पहुंच प्रतिबंधित करें
  • तालिका में विशिष्ट कॉलम तक पहुंच प्रतिबंधित करें
  • कई तालिकाओं के स्तंभों को मिलाएं और उन्हें ऐसे प्रस्तुत करें जैसे वे एक ही तालिका का हिस्सा हों
  • समग्र जानकारी प्रस्तुत करें (जैसे COUNT() . के परिणाम समारोह)

एक दृश्य कैसे बनाएं

एक दृश्य बनाने के लिए, CREATE VIEW का उपयोग करें स्टेटमेंट, उसके बाद SELECT बयान।

CREATE VIEW ViewName 
AS
SELECT ...

यही सब है इसके लिए। जब आप उस कथन को चलाते हैं, तो दृश्य डेटाबेस में सहेजा जाता है

उदाहरण

यहां एक दृश्य बनाने और फिर उस दृश्य से डेटा का चयन करने का एक उदाहरण दिया गया है।

  1. दृश्य बनाएं

    इस पूरे ट्यूटोरियल में हमारे द्वारा बनाए गए संगीत डेटाबेस के विरुद्ध निम्नलिखित कथन चलाएँ।

    यह उदाहरण RockAlbums नामक एक दृश्य बनाता है। यह उन सभी एल्बमों का चयन करता है जिन्हें "रॉक" की शैली सौंपी गई है।

    CREATE VIEW RockAlbums 
    AS
    SELECT AlbumName, ArtistName
    FROM Albums
    	INNER JOIN Artists
    	ON Albums.ArtistId = Artists.ArtistId 
        INNER JOIN Genres
        ON Albums.GenreId = Genres.GenreId
    WHERE Genres.Genre = 'Rock';
  2. दृश्य देखें

    दृश्यों का विस्तार करें अपने नए बनाए गए दृश्य को देखने के लिए लागू डेटाबेस के तहत नोड। आप इसकी परिभाषा में शामिल स्तंभों को देखने के लिए दृश्य के नोड्स का विस्तार भी कर सकते हैं।

  3. दृश्य चलाएं

    अब जब दृश्य बन गया है, तो आप इसे SELECT . का उपयोग करके चला सकते हैं बयान। आप सब कुछ चुन सकते हैं, या आप विशिष्ट कॉलम का चयन कर सकते हैं, परिणामों को WHERE . के साथ और अधिक सीमित कर सकते हैं खंड, आदि।

    SELECT * 
    FROM RockAlbums;

दृश्य बदलें

आप ALTER VIEW . के साथ अपने विचार को संशोधित कर सकते हैं बयान।

आप केवल नई दृश्य परिभाषा प्रदान करते हैं जिसका आप उपयोग करना चाहते हैं। तो यह लगभग CREATE VIEW . के साथ एक नया दृश्य बनाने जैसा है स्टेटमेंट को छोड़कर यह किसी मौजूदा को ALTER VIEW . के साथ बदल रहा है बयान।

यहाँ एक उदाहरण है।

  1. दृश्य बदलें

    निम्नलिखित कथन चलाएँ। यह दृश्य के चयन में एक नया कॉलम जोड़ता है (ReleaseDate कॉलम)।

    ALTER VIEW RockAlbums 
    AS
    SELECT AlbumName, ArtistName, ReleaseDate
    FROM Albums
    	INNER JOIN Artists
    	ON Albums.ArtistId = Artists.ArtistId 
        INNER JOIN Genres
        ON Albums.GenreId = Genres.GenreId
    WHERE Genres.Genre = 'Rock';
  2. दृश्य चलाएं

    अब जबकि हमने ReleaseDate . जोड़ दिया है स्तंभ को देखने के लिए, हम इसका उपयोग अपने SQL प्रश्नों में दृश्य के विरुद्ध कर सकते हैं।

    उदाहरण के लिए, हम उन सभी एल्बमों का चयन कर सकते हैं जहां रिलीज की तारीख एक निश्चित तारीख के बाद है।

    SELECT * 
    FROM RockAlbums
    WHERE ReleaseDate > '1985-01-01';

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. freeTDS अपने कॉन्फिग का उपयोग नहीं कर रहा है

  2. SQL सर्वर में विदेशी कुंजी का उपयोग करने के लिए कोई गंभीर प्रदर्शन हिट है?

  3. SQL सर्वर:क्वेरी तेज़, लेकिन प्रक्रिया से धीमी

  4. निकाय ढांचे का उपयोग करके संग्रहीत कार्यविधि निष्पादित करें

  5. SQL सर्वर में किसी भिन्न डेटाबेस से OBJECT_NAME () कैसे प्राप्त करें