تعداد بازدید: 4968

جدول مجازی یا View در MySQL Engine

یکی دیگر از امکانات پیشرفته موتور MySQL جداول مجازی پویا یا View ها هستند که با استفاده از آن ها می توان با کاهش تعداد اجرای کوئری های پیچیده ها سرعت نرم افزار خود را افزایش داد.

View Syntax

همان طور که می دانید خروجی یک SQL برابر با یک جدول است ، view یک جدول مجازی بر اساس یک SQL Query می باشد که بر روی یک یا چند جدول پیاده سازی شده است.

CREATE VIEW view_name AS SQL QUERY

به طور مثال یک VIEW از پست تایپ های attachment می سازیم و نام آن را attachments می گذاریم :

CREATE VIEW attachments AS 
SELECT * from wp_posts WHERE post_type = 'attachment';

پس از اجرای کد بالا attachments یک جدول مجازی ساخته شده است که می توان هر زمان که به کوئری بالا نیاز شد تنها کوئری زیر اجرا گردد :

SELECT * FROM attachments;

نکته : در صورتی که view ما ساده باشد عملیات update , delete روی جدول مجازی view روی جداول اصلی نیز اعمال می شود. به طور مثال attachments با شناسه 1 را در جدول view حذف کنیم آن از روی جدول wp_posts نیز پاک می شود.

عملیات های CRUD روی View

پیش تر گفتیم که عملیات CRUD روی هر جدول قابل پیاده سازی می باشد . از آنجا که view یک جدول مجازی می باشد پس CRUD روی آن قابل پیاده سازی می باشد.

CREATE View : با استفاده از CREATE VIEW view_name AS SQL QUERY می توان یک View ساخت.

READ View : پس از این که View ساخته شد می توان آن ها را با استفاده از کد زیر نمایش داد :

SHOW FULL TABLES IN database_name WHERE TABLE_TYPE LIKE 'VIEW';

UPDATE View : بروزرسانی اطلاعات view که شامل نام یا ساختار جدول خروجی از SQL می باشد با استفاده از عبارت های کلیدی CREATE OR REPLACE :

CREATE OR REPLACE VIEW attachments AS 
SELECT * from wp_posts WHERE post_type = 'attachment';

DELETE View : پاک کردن view ساخته شده . با استفاده کلمه کلیدی DROP VIEW . پس از اجرای کد زیر دیگر attachment قابل دستیابی نمی باشد :

DROP VIEW attachments;

پس به طور کلی می توان جداول پایگاه داده ما به دسته بندی های زیر تقسیم می شوند :

  • Tables : جداول حقیقی در بردارنده اطلاعات نرم افزار
  • Views : جداول مجازی ساخته شده با استفاده از SQL از روی جداول حقیقی ( Tables )

 

اشتراک گذاری :

مدیر وب سایت گنوتک . برنامه نویسی رو با زبان C در هفده سالگی شروع کردم . در حال حاضر به برنامه نویسی php برپایه معماری MVC , HMVC و همچنین سیستم مدیریت محتوای WordPress و فریم ورک محبوب لاراول علاقه مند هستم و دوست دارم اطلاعاتم رو با شما به اشتراک بگذارم.

۰ دیدگاه برای جدول مجازی یا View در MySQL Engine

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *