सारांश :इस ट्यूटोरियल में, आप सीखेंगे कि SQLite CREATE VIEW
का उपयोग कैसे करें डेटाबेस में एक नया दृश्य बनाने के लिए कथन।
दृश्य क्या है
डेटाबेस सिद्धांत में, एक दृश्य एक संग्रहीत क्वेरी का परिणाम सेट होता है। एक दृश्य डेटाबेस में संग्रहीत किसी नामित ऑब्जेक्ट में क्वेरी को पैक करने का तरीका है।
आप अंतर्निहित तालिकाओं के डेटा को एक दृश्य के माध्यम से एक्सेस कर सकते हैं। दृश्य परिभाषा में क्वेरी जिन तालिकाओं को संदर्भित करती है, उन्हें आधार तालिकाएँ कहा जाता है।
एक दृश्य कुछ मामलों में उपयोगी होता है:
- सबसे पहले, दृश्य तालिकाओं पर एक अमूर्त परत प्रदान करते हैं। आप अंतर्निहित तालिकाओं के स्कीमा को छुए बिना दृश्य में कॉलम जोड़ और हटा सकते हैं।
- दूसरा, आप डेटा एक्सेस को आसान बनाने के लिए जॉइन के साथ जटिल प्रश्नों को एनकैप्सुलेट करने के लिए दृश्यों का उपयोग कर सकते हैं।
SQLite दृश्य केवल पढ़ा जाता है। इसका मतलब है कि आप INSERT
का उपयोग नहीं कर सकते हैं , DELETE
, और UPDATE
व्यू के माध्यम से बेस टेबल में डेटा अपडेट करने के लिए स्टेटमेंट।
SQLite CREATE VIEW
बयान
एक दृश्य बनाने के लिए, आप CREATE VIEW
. का उपयोग करते हैं बयान इस प्रकार है:
CREATE [TEMP] VIEW [IF NOT EXISTS] view_name[(column-name-list)]
AS
select-statement;
Code language: SQL (Structured Query Language) (sql)
सबसे पहले, दृश्य के लिए एक नाम निर्दिष्ट करें। IF NOT EXISTS
विकल्प केवल एक नया दृश्य बनाता है यदि वह मौजूद नहीं है। यदि दृश्य पहले से मौजूद है, तो यह कुछ नहीं करता है।
दूसरा, TEMP
का उपयोग करें या TEMPORARY
विकल्प यदि आप चाहते हैं कि दृश्य केवल वर्तमान डेटाबेस कनेक्शन में दिखाई दे। दृश्य को अस्थायी दृश्य कहा जाता है और जब भी डेटाबेस कनेक्शन बंद होता है तो SQLite स्वचालित रूप से अस्थायी दृश्य को हटा देता है।
तीसरा, एक SELECT
निर्दिष्ट करें देखने के लिए बयान। डिफ़ॉल्ट रूप से, दृश्य के कॉलम SELECT
. के परिणाम सेट से प्राप्त होते हैं बयान। हालाँकि, आप उन दृश्य स्तंभों के नाम निर्दिष्ट कर सकते हैं जो तालिका के स्तंभ नाम से भिन्न हैं
SQLite CREATE VIEW
उदाहरण
आइए CREATE VIEW
. का उपयोग करके एक नया दृश्य बनाने के कुछ उदाहरण लेते हैं बयान।
1) जटिल क्वेरी को सरल बनाने के लिए एक दृश्य बनाना
निम्न क्वेरी tracks
से डेटा प्राप्त करती है , albums
, media_types
और genres
इनर जॉइन क्लॉज का उपयोग करके नमूना डेटाबेस में टेबल।
SELECT
trackid,
tracks.name,
albums.Title AS album,
media_types.Name AS media,
genres.Name AS genres
FROM
tracks
INNER JOIN albums ON Albums.AlbumId = tracks.AlbumId
INNER JOIN media_types ON media_types.MediaTypeId = tracks.MediaTypeId
INNER JOIN genres ON genres.GenreId = tracks.GenreId;
Code language: SQL (Structured Query Language) (sql)
इसे आज़माएं
इस क्वेरी के आधार पर एक दृश्य बनाने के लिए, आप निम्नलिखित कथन का उपयोग करते हैं:
CREATE VIEW v_tracks
AS
SELECT
trackid,
tracks.name,
albums.Title AS album,
media_types.Name AS media,
genres.Name AS genres
FROM
tracks
INNER JOIN albums ON Albums.AlbumId = tracks.AlbumId
INNER JOIN media_types ON media_types.MediaTypeId = tracks.MediaTypeId
INNER JOIN genres ON genres.GenreId = tracks.GenreId;
Code language: SQL (Structured Query Language) (sql)
इसे आज़माएं
अब से, आप ऊपर दी गई जटिल क्वेरी के बजाय निम्न सरल क्वेरी का उपयोग कर सकते हैं।
SELECT * FROM v_tracks;
Code language: SQL (Structured Query Language) (sql)
इसे आज़माएं
2) कस्टम कॉलम नामों के साथ एक दृश्य बनाना
निम्नलिखित कथन v_albums
. नामक एक दृश्य बनाता है जिसमें एल्बम का शीर्षक और एल्बम की लंबाई मिनटों में हो:
CREATE VIEW v_albums (
AlbumTitle,
Minutes
)
AS
SELECT albums.title,
SUM(milliseconds) / 60000
FROM tracks
INNER JOIN
albums USING (
AlbumId
)
GROUP BY AlbumTitle;
Code language: SQL (Structured Query Language) (sql)
इस उदाहरण में, हमने AlbumTitle
. दृश्य के लिए नए कॉलम निर्दिष्ट किए हैं albums.title
. के लिए अभिव्यक्ति के लिए कॉलम और मिनट SUM(milliseconds) / 60000
यह क्वेरी v_albums
. से डेटा लौटाती है देखें:
SELECT * FROM v_albums;
Code language: SQL (Structured Query Language) (sql)
इस ट्यूटोरियल में, आपने डेटाबेस व्यू और CREATE VIEW
. के उपयोग के बारे में सीखा है SQLite में नए दृश्य बनाने के लिए कथन।