بسم الله الرحمن الرحيم
الاخوة الكرام
السلام عليكم و رحمة الله و بركاته
الجزء الثانى
الاستعلامات
استعلامات Sql المحددة SQL Specific Queries
استعلام التوحيد : Union Query
مثل استعلامات الاختيار و لكن يتميز بامكانية توحيد أو ضم بيانات أكثر من جدول فى نفس الحقل
مثال (( لدينا جدول باسم الاعضاء الفعاليين وجدول اخر باسم الاعضاء المميزين ونريد توحيد الجدولين فى استعلام واحد باسم الاعضاء الفعاليين المميزين ))
الخطوة الأولي فى عمل استعلام التوحيد هي تحضير جملة Sql لكل من الاستعلامات المراد توحيدها فى استعلام واحد
نقوم بانشاء استعلام اختيار جديد لجدول الاعضاء الفعاليين وندرج به اسم العضو
ثم ننسخ جملة Sql الموجودة بالاستعلام
لتكون الجملة كالتالى
SELECT [الاعضاء الفعالين].[اسم العضو]
FROM [الاعضاء الفعالين];
فننسخها استعدادا لنسخها فى استعلام التوحيد ولكن بدون الفاصلة الخاتمة
ثم نقوم بفتح استعلام جديد بدون اختيار اى جدول ثم نختار من قائمة استعلام ــــــــــ خاص بـ Sql
تظهر نافذة فارغة من اى بيانات نلصق جملة Sql التى قمنا بنسخها مسبقا ونضيف بعد ذلك معامل Union
ونعود بتكرار ما سبق نقوم بانشاء استعلام اختيار جديد لجدول الاعضاء المميزين وندرج به اسم العضو
وونسخ جملة Sql كما سبق من قبل واضافتها فى استعلام التوحيد بعد معامل Union وتكون جملة Sql النهائية فى استعلام التوحيد بالشكل التالى
SELECT [الاعضاء الفعالين].[اسم العضو]
FROM [الاعضاء الفعالين]
Union
SELECT [الاعضاء المميزين].[اسم العضو]
FROM [الاعضاء المميزين]
استعلامات التمرير : Pass-Trough Queriesتستخدم لارسال أوامر بلغة Sql الي خادم قاعدة بيانات مباشرة من خلال ال ODBC (( تعريف لـ ODBC هى امكانية الاتصال بين قواعد البيانات ، و مشاركة البيانات بينها و تعتمد علي
لغة الاستعلامات البنائية ( Sql ) النمطية للتعامل مع البيانات)) و قد يكون لها مردود باعادة عرض سجلات و قد لا يكون لها مردود باعادة عرض سجلات ، و تفاصيل كتابة الاوامر فيها
تعتمد علي قاعدة البيانات التي سنقوم بالتمرير اليها
ملاحظة : يعتبر هذا النوع الأقل استخداما بين أنواع الاستعلامات وقد لا تتعرض لاستخدامه و أنت تعد تطبيق الاكسس الا اذا أردت التصال بانواع أخري من قواعد البيانات
لانشاء الاستعلام نفتح استعلام جديد فى وضع التصميم
ثم لا نختار أي جدول
ثم من قائمة استعلام
نختار خاص بـ Sql ـــــــــــ تمريرى
فتتحول الشاشة الي وضع كتابة تعبير Sql ثم نختار أيقونة الخصائص
فنكتب فيه جملة الاتصال بالخادم فى سلسلة اتصال ODBC أو نقوم بالضغط على الزر الموجود به ثلاث نقاط فينفتح مربع حوار لاختيار مصدر البيانات المراد الاتصال به من خلال مصادر ال ODBC .
و نختار علامة التوبيب الثانية Machine Data Source ثم نختار نوع وصلة ال ODBC من بين انواع التطبيقات المختلفة التي ستظهر لك
و لنفرض أنك للسهولة تريد تطبيقها مع الاكسس فتختار MS Accses Data@@@@ مثلا ، و أيضا يمكنك تعريف محرك اتصال جديد غير الظاهرين فى القائمة من زر New
بعد اختيار محرك ال ODBC الخاص بالفوكس برو ، سيظهرمربع حوار لتحديد مكان القاعدة أو مجلد الجداول .
و يمكنك حفظ اسم المستخدم و كلمة السر ضمن جملة الاتصال
استعلامات تعريف البيانات : Data definition queriesو هي تستخدم لانشاء و حذف و تعديل الجداول و الفهارس
لانشاء الاستعلام نفتح استعلام جديد فى وضع التصميم
ثم لا نختار أي جدول ثم من قائمة استعلام نختار ــــــــــــــــــ خاص بـ Sql ــــــــ تعريف بيانات
فتتحول الشاشة الي وضع كتابة تعبير Sql فنكتب فيه جملة الاستعلام
سنقوم بإنشاء جدول يسمى " Members" (الاعضاء) تحتوي الجملة على رقم العضو واسم العضو وتاريخ الانتساب ونوع البيانات لكل حقل في الجدول وتعيين فهرساً لحقل "معرف الحقل"
يميزه كمفتاح أساسي
CREATE TABLE Members
([MemberID] integer,
[MemberName] text,
[Dateofenrollment] Date,
CONSTRAINT [Index1] PRIMARY KEY ([MemberID]));
الاستعلامات الفرعية : Sub-queryهي لا تمثل نوع جديد من الاستعلامات ولكنها عبارة عن استعمال لاستعلام تحديد لايجاد قيمة بناء علي جملة Sql لاستخدامها اما كمعيار لحقل او كقيمة مستنتجة فى استعلام آخر سواء كان هذا
الاستعلام الأخر استعلام تحديد أو إستعلام إجرائي ويتم كتابة تعبير الاس كيو ال داخل أقواس ( )
مثال (( لدينا جدول باسماء الاعضاء و جدول لتصنيف الاعضاء [ عضو جديد - عضو مميز - عضو فعال - مراقب - مشرف ] ))
و نريد عمل استعلام علي جدول الاعضاء فقط بدون ادراج جدول تصنيف الاعضاء و استخدام علاقة مباشرة مع جدول الاعضاء
بحيث نـعرض الاعضاء الذى يبدأ تصنيفها بحرف الـ ( ع )
وفى نفس الوقت لا نريد التعامل من خلال العلاقة بين الجدولين أي نريد الاستعلام فقط مبني علي جدول الاعضاء ونريد الشرط فيه علي اساس الوصف فى جدول تصنيف الاعضاء
أولا نعد الاستعلام العادي لعرض الاعضاء بصورة عادية
SELECT الاعضاء.[رقم العضو], الاعضاء.[اسم العضو], الاعضاء.التصنيف
FROM الاعضاء;
و نعد استعلام مؤقت لعمل الشرط علي جدول تصنيف الاعضاء
ليكون بالشكل التالى
SELECT [تصنيف الاعضاء].[رقم التصنيف], [تصنيف الاعضاء].التصنيف
FROM [تصنيف الاعضاء]
WHERE ((([تصنيف الاعضاء].التصنيف) Like "ع*"));
ثم نضع الشرط بين قوسين و ننسخه الي خانة المعييار لحقل ( رقم العضو ) فى الاستعلام الاول ليكون بالشكل التالى
SELECT الاعضاء.[رقم العضو], الاعضاء.[اسم العضو], الاعضاء.التصنيف
FROM الاعضاء
WHERE (((الاعضاء.التصنيف)=(SELECT(تصنيف الاعضاء.اسم التصنيف
FROM تصنيف الاعضاء
WHERE (((تصنيف الاعضاء.التصنيف) Like "ع*"))
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]));
بهذا نكون قد انتهينا بحمد الله من الجزء الثانى من الاستعلامات
درسنا القادم ان شاء الله عن النماذج
منقول للافادة
وبارك الله فى استاذنا صاحب الموضوع