شرح صفوف ومحتوى الفقرة
يُعرَّف العرض View في MySQL بأنه جدول افتراضي مسمّى (Virtual Table) يتكوّن محتواه من استعلام SELECT محفوظ داخل قاموس بيانات المحرك (Data Dictionary). وعلى خلاف الجداول الفيزيائية الأساسية (Base Tables) في محرك InnoDB، لا يحجز العرض مساحة تخزينية لنسخ الصفوف على القرص الصلب، بل يعيد تنفيذ الاستعلام الكامن خلفه لحظياً في كل مرة تقرأ فيها البيانات منه.
تُستخدم العروض في الأنظمة الإنتاجية لتحقيق ثلاثة أهداف هندسية رئيسية:
- تغليف الاستعلامات المعقدة (Query Encapsulation): اختصار عبارات الربط المتعددة
INNER JOINوLEFT JOINوالتجميعات في اسم منطقي واحد يسهل استدعاؤه من تطبيقات الواجهة الخلفية. - عزل طبقة التطبيق عن تغيرات المخطط (Schema Abstraction): إذا قُسِّم جدول كبير لاحقاً إلى جدولين، يمكنك تعديل تعريف العرض ليحافظ على نفس أسماء الأعمدة دون كسر كود التطبيق.
- توحيد منطق الأعمال (Single Source of Truth): بدلاً من تكرار معادلة حساب صافي الفاتورة أو حالة العميل النشط في عشرات الملفات البرمجية، تُكتب المعادلة مرة واحدة داخل العرض.
SQL
SELECT * FROM v_active_customers;