آموزش
View در SQL
View در SQL
یک View در SQL یک جدول مجازی است که بر اساس نتایج یک پرس و جوی SQL تعریف میشود. Viewها دادههای واقعی ذخیره نمیکنند، بلکه در زمان دسترسی به آنها، پرس و جوی تعریف شده اجرا میشود و خروجی آن به عنوان دادههای View نمایش داده میشود.
مزایای View:
- سادگی: Viewها باعث سادهسازی پرس و جوهای پیچیده میشوند. با استفاده از View میتوان یک پرس و جوی پیچیده را با یک نام ساده فراخوانی کرد.
- ** امنیت:** Viewها میتوانند دسترسی به دادههای زیرین را کنترل کنند. شما میتوانید ستونها و رکوردهای خاصی را در View نمایش دهید و از نمایش اطلاعات حساس جلوگیری کنید.
- تجمیع دادهها: Viewها میتوانند دادهها را از چندین جدول در یک نمای واحد ترکیب کنند و تجزیه و تحلیل دادهها را آسانتر کنند.
- استانداردسازی: Viewها میتوانند به عنوان یک استاندارد برای دسترسی به دادهها عمل کنند و اطمینان حاصل کنند که کاربران از ساختار دادههای پایهای آگاه نباشند.
اجزای View:
- CREATE VIEW statement: برای ایجاد View استفاده میشود و شامل نام View و پرس و جوی SQL تعریف کننده آن است.
- Base tables: جدول یا جداولی که View بر اساس آنها ساخته میشود.
- Columns: ستونهای View که از ستونهای جداول زیربنایی یا نتایج توابع در پرس و جوی تعریف کننده View حاصل میشوند.
مثال:
فرض کنید میخواهیم یک View ایجاد کنیم که لیست تمام مشتریان و آخرین سفارش آنها را نمایش دهد.
ایجاد View:
SQL
CREATE VIEW CurrentCustomerOrders AS
SELECT c.CustomerID, c.Name, o.OrderID, o.OrderDate
FROM Customers c
INNER JOIN Orders o ON c.CustomerID = o.CustomerID
ORDER BY c.CustomerID, o.OrderDate DESC;
توضیح:
- این View با نام
CurrentCustomerOrders
ایجاد میشود. - پرس و جوی تعریف کننده View، اطلاعات مشتریان (از جدول
Customers
) را با آخرین سفارش آنها (از جدولOrders
) بر اساس شناسه مشتری (CustomerID
) مرتبط میکند. - خروجی View شامل شناسه مشتری، نام مشتری، شناسه سفارش و تاریخ سفارش است.
استفاده از View:
میتوانید از این View به سادگی مانند یک جدول واقعی استفاده کنید:
SQL
SELECT * FROM CurrentCustomerOrders;
این دستور، لیست تمام مشتریان و آخرین سفارش آنها را نمایش میدهد.
نکات کلیدی:
- Viewها قابل ویرایش یا حذف مستقیم نیستند، برای تغییر محتوای View باید پرس و جوی تعریف کننده آن را ویرایش کنید.
- Viewها میتوانند بر اساس Viewهای دیگر ایجاد شوند (تو در تو).
- عملکرد Viewها به پیچیدگی پرس و جوی تعریف کننده آنها بستگی دارد.
Viewها ابزاری قدرتمند در SQL هستند که به شما امکان میدهند با دادههای پایگاه داده به روشی ساده، ایمن و کارآمد کار کنید.