Views
Views
مفهوم
~18 دقيقة
Views
الـ view استعلام محفوظ باسم. يمكن أن تجعل تقريراً متكرراً أسهل في الاستخدام. بدلاً من نسخ join طويل في كل مكان، تنشئ CREATE VIEW paid_orders AS ... ثم تستعلم منه.
الـ view ليست جدولاً جديداً غالباً؛ هي تعريف استعلام. لذلك الأداء يعتمد على الاستعلام الأساسي والفهارس. استخدمها للوضوح، لا لإخفاء مشكلة أداء.
مثال عملي
query.sql
Output:
الاسم paid_orders يحفظ معنى الشرط.
Views في SQLite للقراءة فقط
Views في SQLite قراءة فقط (READ-ONLY) بشكل افتراضي. محاولة INSERT INTO active_users VALUES (...) تفشل بالخطأ:
cannot modify active_users because it is a view
لجعل view قابلاً للكتابة، يجب استخدام INSTEAD OF trigger يعترض عملية الكتابة ويُحوّلها إلى الجداول الحقيقية:
query.sql
Output:
استخدام INSTEAD OF triggers نادر في الممارسة. الحل الأبسط غالباً: اكتب مباشرة إلى الجداول الحقيقية في تطبيقك.
تحدي — Challenge
أنشئ view للطلبات paid ثم اختر total