تجاوز إلى المحتوى الرئيسي
تابعنا على تيليجرامانضم

آخر تحديث:

محتويات الموضوع (١٠)

شرح الموضوع

علمت سابقاً أن قاعدة البيانات هي مجموعة البيانات المرتبة والمنظمة بطريقة يسهل الوصول إليها وإدارتها والتعديل عليها، ولاحظت كيفية تخزين هذه البيانات في كيانات (جداول).

الدرس الثاني: الاستعلامات ولغة

كيف نخاطب قاعدة البيانات؟

لابد من وسيلة تخاطب بها قاعدة البيانات يُمكن من خلالها القيام بعمليات عدة عليها هذه الوسيلة هي لغة ⁦(SQL)⁩

  • العمليات: استرجاع البيانات من كيان أو أكثر، وتحديث البيانات، والإضافة عليها، وحذفها.
  • أيضاً: إنشاء قاعدة بيانات وحذفها، وإنشاء جداول وتحديثها وحذفها، وإنشاء روابط بين الجداول.
  • لغة ⁦SQL⁩ تستخدمها معظم قواعد البيانات وخاصة العلائقية منها.
  • أكسس يبني أوامر ⁦SQL⁩ بالنيابة عن المبرمج ليتم تنفيذ الاستعلامات المطلوبة.

أقسام لغة

  • سوف يتم التطرق إليها نظراً لأثرها المباشر على البيانات، وأهميتها في إنتاج التقارير المطلوبة.

ما أقسام لغة ⁦SQL⁩؟

ما العمليات التي يمكن القيام بها على قاعدة البيانات بلغة ⁦SQL⁩؟

كيفية بناء الاستعلام في الاكسس

أربعة أنواع من الاستعلامات في أكسس

  • أنواع الاستعلامات: استعلام الاختيار (التحديد) ⁦SELECT⁩، واستعلام التحديث ⁦UPDATE⁩، واستعلام الحذف ⁦DELETE⁩، واستعلام الإلحاق ⁦INSERT INTO⁩.

أولاً: استعلام الاختيار

كيف نبني استعلام اختيار بالتصميم؟

  • 1. إنشاء الاستعلام: من علامة التبويب (إنشاء) نختار معالج الاستعلامات أو تصميم استعلام.
  • 2. تفعيل (تصميم الاستعلام): تظهر شاشة بها جميع الجداول الموجودة في قاعدة البيانات.
  • 3. اختيار الجدول: بالنقر المزدوج عليه أو بتحديده ثم نقر زر إضافة ⁦(Add)⁩.
  • 4. تحديد الحقل: بالنقر المزدوج عليه أو سحبه إلى الجزء السفلي بالفأرة.
شاشة إنشاء استعلام
شاشة إنشاء استعلام
  • تحديد الحقل يكون لسبب أو أكثر: عرضه، أو الترتيب عليه، أو وضع معيار عليه.
  • عرض ⁦(Show)⁩ الحقل: يُحدد بمربع الخيار أمام الخانة إظهار ⁦(Show)⁩، والقيمة التلقائية عند اختيار حقل هي «إظهاره».
شاشة تصميم استعلام
شاشة تصميم استعلام
  • الترتيب ⁦(Sort)⁩: تنازلياً ⁦(Descending)⁩ أو تصاعدياً ⁦(Ascending)⁩ بناءً على القيمة الموجودة في الحقل.
  • عند عدم اختيار حقل للترتيب يتم الترتيب بناءً على المفتاح الأساسي، ولا يظهر ذلك في جملة الـ ⁦SQL⁩.
  • المعيار ⁦(Criteria)⁩: مثل أكبر من وأصغر من وأكبر من أو يساوي، أو المعايير المنطقية.
  • الرابطة ⁦(OR)⁩: إضافة أكثر من شرط على أن يتحقق أحدها على الأقل.
  • الرابطة ⁦(AND)⁩: تحقيق مجموعة من الشروط معاً.

عند عدم اختيار حقل للترتيب، على أي أساس يرتب الاستعلام النتيجة؟

  • 5. حفظ الاستعلام وتحديد اسم مناسب له، فيظهر ضمن مكونات قاعدة البيانات.
  • 6. تنفيذ الاستعلام: بالنقر المزدوج عليه أو بتحديده ثم النقر على أيقونة تشغيل ⁦(RUN)⁩ من علامة التبويب تصميم.
  • 7. التعديل: الرجوع إلى تصميم الاستعلام السابق باختياره والنقر على أيقونة تصميم.
شاشة استعلامات
شاشة استعلامات
  • 8. عرض جملة الـ ⁦SQL⁩: بالنقر بزر الفأرة الأيمن بمنطقة العمل الفارغة في عرض تصميم الاستعلام، واختيار طريقة عرض ⁦SQL (SQL View)⁩.

الصيغة العامة لجملة الاختيار

  • الصيغة العامة لجملة ⁦SQL⁩ التي تمثل الاستعلام من الواجهة الرسومية:
  • SELECT: اختيار من جدول أو أكثر.
  • WHERE: شرط لاختيار السجل.
  • ORDER BY: ترتيب السجلات بناءً على الحقول المختارة إما تصاعدياً أو تنازلياً.
  • المعايير: من أهم الأمور في الاستعلامات، ومن خلالها يتم فرز البيانات بناءً على شروط معينة.
  • الترتيب على أكثر من حقل: ترتب النتيجة بناءً على قيم الحقل الأول، وبناءً على قيم الحقل الثاني في ظل ترتيب الحقل الأول.
  • نتيجة الاستعلام تعرض في جدول مؤقت أعمدته الحقول المختارة من الجداول الأصلية وصفوفه يحددها الشرط في عبارة ⁦(WHERE)⁩.
  • حذف الشرط ⁦(where)⁩ من الأمر يعني اختيار جميع صفوف الجداول، وينطبق هذا على جميع أوامر ⁦(SQL)⁩ الأخرى.

من الواجهة الرسومية إلى الجملة المكتوبة

شاشة مثال 1
شاشة مثال 1
  • استخراج جميع الحقول: يكتفى بوضع النجمة (*) مكان أسماء الحقول.
  • SELECT (*) FROM project_tbl;
  • تنفيذه بجملة ⁦SQL⁩: النقر بزر الفأرة الأيمن واختيار طريقة عرض ⁦SQL⁩، وكتابة جمل ⁦SQL⁩ كما تظهر في الشاشة الآتية.
  • ثم تنفيذ الاستعلام بالنقر على زر تشغيل ⁦(Run)⁩ المبين في الشكل السابق.
شاشة تنفيذ استعلام
شاشة تنفيذ استعلام
شاشة نتيجة استعلام
شاشة نتيجة استعلام
شاشة تصميم استعلام
شاشة تصميم استعلام
شاشة نتيجة استعلام
شاشة نتيجة استعلام

ما النمط التلقائي للترتيب في ⁦ORDER BY⁩؟

كيف نستخرج جميع الحقول من جدول محدد أو من عدة جداول؟

عبارة الشرط

عبارة الشرط: نسترجع الصفوف التي نريدها فقط

  • عبارة الشرط: إحدى أجزاء أوامر ⁦SQL⁩، تستخدم في أمر ⁦SELECT⁩ حينما يطلب استرجاع صفوف معينة ومحددة من جدول أو أكثر.
  • المعايير (الشروط): تحدد في الاستعلام، والصيغة العامة كالآتي:
  • العمليات ⁦(Operators)⁩ التي تستخدم في جملة الشرط هي:
العملية ⁦operator⁩الوصف ⁦Description⁩
=⁦Equal⁩ يساوي
<>⁦Not Equal⁩ لا يساوي
<⁦Less than⁩ أصغر من
>⁦Greater than⁩ أكبر من
<=⁦Less than or equal⁩ أصغر من أو يساوي
>=⁦Greater than or equal⁩ أكبر من أو يساوي
شاشة نتيجة استعلام
شاشة نتيجة استعلام
  • وجملة ⁦SQL⁩ التي تظهر للاستعلام السابق تكون كما يأتي:
اسماء المشاريع التي تكلفتها الاجمالية اقل من 2500000
اسماء المشاريع التي تكلفتها الاجمالية اقل من 2500000

استرجاع البيانات من جدولين أو أكثر:

بيانات من جدولين: الشرط هو المفتاح

  • الروابط بين الجداول: أهمها واحد لمتعدد، من خلال حقل يشكل المفتاح الأساسي في جدول (جانب واحد) والمفتاح الأجنبي في جدول آخر (جانب متعدد).
  • لاستخراج بيانات من جدولين يستخدم المفتاح الذي يربط بينهما في الشرط.

3. في خانة المعايير يكتب

منشئ التعبير
منشئ التعبير
  • SELECT eng_name, dep_name FROM engineer_tbl, department_tbl WHERE engineer_tbl.dep_num = Department_tbl.dep_num;

ملاحظة:

استعلام المهندس والقسم الذي يعمل به
استعلام المهندس والقسم الذي يعمل به
proj count 3
proj count 3
عرض معلومات سجل المشروع حسب الرقم المدخل من المستخدم
عرض معلومات سجل المشروع حسب الرقم المدخل من المستخدم
إدخال قيمة معلمة: ادخل رقم المشروع لعرض بياناته المطلوبة 2
إدخال قيمة معلمة: ادخل رقم المشروع لعرض بياناته المطلوبة 2

ثانياً: استعلام التحديث

استعلام التحديث: نعدّل قيم السجلات

  • استعلام التحديث: يستخدم لتحديث بيانات مجموعة من السجلات في الجدول أي تحديث بيانات حقول محددة في جداول موجودة.
  • لإنشائه: نصمم استعلام اختيار (تحديد) ⁦Select query⁩ يحوي الحقول المطلوب تحديثها والمعايير، ثم يحوّل إلى استعلام تحديث من علامة التبويب (تصميم).
  • الإجراء نفسه يستخدم مع استعلام الحذف والإضافة.
  • الصيغة العامة لجملة ⁦SQL⁩ المناظرة لهذا الاستعلام:
  • UPDATE: الجدول المراد تحديثه.
  • SET: إسناد القيم الجديدة للحقول المراد تحديثها.
  • WHERE: شرط ليحدد الصفوف المراد تحديثها.
  • الحقل في الشرط: من الممكن أن يكون من الحقول المراد تحديثها، ومن الممكن أن يكون حقلاً آخر.
  • ينفذ الأمر: يعطي القيمة ⁦new_value⁩ للحقل ⁦column1_name⁩ في كل صف يتحقق فيه الشرط ⁦column_name = some_value⁩.
استعلام تحديث emp_pay التي قيمتها اكبر من او تساوي 20
استعلام تحديث ⁦emp_pay⁩ التي قيمتها اكبر من او تساوي 20
Microsoft Access: أنت على وشك تحديث 1 صف/صفوف. هل تريد بالتأكيد تحديث هذه السجلات؟ نعم لا
⁦Microsoft Access⁩: أنت على وشك تحديث 1 صف/صفوف. هل تريد بالتأكيد تحديث هذه السجلات؟ نعم لا
Microsoft Access: أنت على وشك تشغيل استعلام تحديث مما سيؤدي إلى تعديل البيانات في الجدول. هل تريد بالتأكيد تشغيل هذا النوع من الاستعلام الإجرائي؟ للحصول على معلومات حول إيقاف هذه الرسالة كلما أردت تشغيل استعلام إجرائي، انقر تعليمات. إظهار التعليمات << نعم لا تعليمات
⁦Microsoft Access⁩: أنت على وشك تشغيل استعلام تحديث مما سيؤدي إلى تعديل البيانات في الجدول. هل تريد بالتأكيد تشغيل هذا النوع من الاستعلام الإجرائي؟ للحصول على معلومات حول إيقاف هذه الرسالة كلما أردت تشغيل استعلام إجرائي، انقر تعليمات. إظهار التعليمات << نعم لا تعليمات
employee_tbl قبل تنفيذ الاستعلام
⁦employee_tbl⁩ قبل تنفيذ الاستعلام

صيغة الأمر

الإدخال والإلحاق: نضيف سجلات جديدة

  • يحدد الجدول المراد إدخال سجل إليه، وتحدد الحقول (الأعمدة) المراد إسناد قيم لها.
  • شرط: أن يكون المفتاح الأساسي أحد تلك الحقول.
  • القيم: تسرد بحيث يتوافق سردها مع سرد الحقول نوعاً وترتيباً في الجدول.
  • الأقواس: الحقول والقيم توضع داخل أقواس كما هو مبين في صيغة الأمر.
  • قد لا يوفق الإدخال للأسباب الآتية:
  • تكرار في المفتاح.
  • قيمة المفتاح الأجنبي غير مسموحة.
  • نوعية القيمة تختلف عن نوعية الحقل المسند له كأن نسند قيمة نصية لحقل عددي.
قبل تنفيذ استعلام الالحاق الجدول فارغ
قبل تنفيذ استعلام الالحاق الجدول فارغ
  • 1. اختيار الجدول ⁦(depart_2)⁩ الذي يحوي البيانات المراد عمل إلحاق منه للجدول الآخر ⁦(department_tbl)⁩.
  • 2. التحويل: تحويل الاستعلام إلى استعلام إلحاق من قائمة تبويب (تصميم الاستعلامات) واختيار اسم الجدول المراد عمل إلحاق له.
  • 3. اختيار الحقول من الجدول المصدر مع ضرورة مراعاة نوع البيانات بين حقول الجداول وترتيبها.
  • 4. تنفيذ الاستعلام، حيث تظهر رسائل التأكيد.
  • 5. النتيجة: تظهر النتيجة في الجدول.
خطوة 1
خطوة 1
خطوة 4
خطوة 4
رسائل تأكيد
رسائل تأكيد
بعد تنفيذ الاستعلام
بعد تنفيذ الاستعلام
  • وجملة ⁦SQL⁩ لما سبق تكون كما يأتي:

ما الأسباب التي قد لا يوفق فيها الأمر في الإدخال؟

ما الإلحاق؟

استعلام الحذف: نحذف سجلات من جدول

  • 1. حذف جميع سجلات جدول يتم تحديده ⁦(department_tbl)⁩:
  • من تبويب إنشاء - تصميم استعلام - اختيار استعلام حذف.
  • اظهار الجدول المطلوب وادراج حقوله في المكان المخصص، ثم تحويله إلى استعلام حذف.
  • حفظ الاستعلام باسم يتم تحديده.
صورة توضح حفظ استعلام الحذف
صورة توضح حفظ استعلام الحذف
جدول department_tbl قبل الحذف
جدول ⁦department_tbl⁩ قبل الحذف
رسائل تأكيد الحذف في Microsoft Access
رسائل تأكيد الحذف في ⁦Microsoft Access⁩
جدول department_tbl بعد الحذف
جدول ⁦department_tbl⁩ بعد الحذف
تصميم استعلام حذف حسب الرقم المدخل
تصميم استعلام حذف حسب الرقم المدخل
جدول department_tbl قبل الحذف
جدول ⁦department_tbl⁩ قبل الحذف
رسائل تأكيد الحذف مع إدخال قيمة معلمة
رسائل تأكيد الحذف مع إدخال قيمة معلمة

معاينة موضوع «الاستعلامات ولغة SQL» من وحدة «قواعد البيانات» في مادة التكنولوجيا. أقسام الشرح: ١٠.

المصدر: الاستعلامات ولغة SQL (ص ١٧–٣٩)

موضوعات أخرى في الوحدة

تابع الدراسة