قمنا فى الدروس السابقة باسترجاع البيانات من جدول واحد ..ولكن ماذا لو أردنا استرجاع البيانات من أكثر من جدول فى برنامج الاكسيس MS access و هذه الجداول بينهما علاقة
وكما تحدثنا من قبل يوجد ثلاثة علاقات بين الجداول وهى إما one to one أو one to many أو Many to many
ولنفترض أنا لدينا جدولان هما جدول المعلمين teachers وجدول المدارس schools وهذان الجدولان بينهما علاقة one to many حيث أن المعلم الواحد يعمل فى مدرسة واحدة بينهما المدرسة الواحدة يعمل بها أكثر من معلم لذا نجد العلاقة من جهة المعلم many ومن جهة المدرسة One لذا فالعلاقة بين الجدولين هى One to many .
وذلك بربط المفتاح الأساسي primary key فى جدول المدارس schools وهو حقل schoolid مع المفتاح الأجنبي foreign key فى جدول المعلمين teachers وهو حقل scoolid
لاسترجاع النتائج من جدولين نكتب أسماء الحقول التى نريد استرجاعها فى الحقل الأول وهى كما هو موضح tfname ثم علامة فاصلة , واسماء الحقول الأخرى سواء فى نفس الجدول أو في جدول آخر ثم نكتب from ثم نكتب اسماء الجداول التى نريد استرجاع الحقول منها ونفصل بين كل جدول وآخر بعلامة , ثم بعد جملة where نكتب اسماء الحقول التى تربط بين الجدولين وفي هذا المثال ربطنا حقل schoolid فى جدول المعلمين teachers بحقل schoolid بجدول المدارس schools
نلاحظ أنه تم اظهار كل معلم وامامه المدرسة التى يعمل بها كما هو موضح بالمثال.
نلاحظ ان المعلم الذي لم يتم تسكينه فى أى مدرسة تم تجاهله فالسجل الأخير تم تجاهله
فى نتائج الاستعلام السابق لعدم ربط هذا المعلم بأى مدرسة كما هو موضح
نلاحظ أنه تم إظهار اسماء المعلمين الذين
يعملون بمدرسة السلام بنات فقط دون غيرهم من المعلمين
والأن نريد معرفة المدرسة التى يعمل بها المعلم الذى له الاسم الأول Khalid واسم الأب shukry ولعمل ذلك نقوم بعمل الاستعلام التالي:-
نلاحظ أنه تم إظهار اسماء المدرسة الذين
يعمل بها المعلم الذى الذى اسمه khalid shukry
وكما تحدثنا من قبل يوجد ثلاثة علاقات بين الجداول وهى إما one to one أو one to many أو Many to many
ولنفترض أنا لدينا جدولان هما جدول المعلمين teachers وجدول المدارس schools وهذان الجدولان بينهما علاقة one to many حيث أن المعلم الواحد يعمل فى مدرسة واحدة بينهما المدرسة الواحدة يعمل بها أكثر من معلم لذا نجد العلاقة من جهة المعلم many ومن جهة المدرسة One لذا فالعلاقة بين الجدولين هى One to many .
وذلك بربط المفتاح الأساسي primary key فى جدول المدارس schools وهو حقل schoolid مع المفتاح الأجنبي foreign key فى جدول المعلمين teachers وهو حقل scoolid
لاسترجاع النتائج من جدولين نكتب أسماء الحقول التى نريد استرجاعها فى الحقل الأول وهى كما هو موضح tfname ثم علامة فاصلة , واسماء الحقول الأخرى سواء فى نفس الجدول أو في جدول آخر ثم نكتب from ثم نكتب اسماء الجداول التى نريد استرجاع الحقول منها ونفصل بين كل جدول وآخر بعلامة , ثم بعد جملة where نكتب اسماء الحقول التى تربط بين الجدولين وفي هذا المثال ربطنا حقل schoolid فى جدول المعلمين teachers بحقل schoolid بجدول المدارس schools
جملة select المستخدمة لاسترجاع البيانات من جدولى المعلمين teachers والمدارس schools وبينهما العلاقة One to many .
select tfname,tlname,schoolname from teachers,schools where teachers.schoolid=schools.schoolid;
نلاحظ أنه تم اظهار كل معلم وامامه المدرسة التى يعمل بها كما هو موضح بالمثال.
نلاحظ ان المعلم الذي لم يتم تسكينه فى أى مدرسة تم تجاهله فالسجل الأخير تم تجاهله
فى نتائج الاستعلام السابق لعدم ربط هذا المعلم بأى مدرسة كما هو موضح
والأن نريد معرفة أسماء المعلمين الذين
يعملون بمدرسة السلام بنات فقط
دون غيرهم من باقى المعلمين لذا نقوم بعمل الاستعلام التالي:-
Select tfname,tlname ,schoolname from
teachers,schools where
teachers.schoolid=schools.schoolid and schoolname=“السلام
بنات”
والأن نريد معرفة المدرسة التى يعمل بها المعلم الذى له الاسم الأول Khalid واسم الأب shukry ولعمل ذلك نقوم بعمل الاستعلام التالي:-
Select tfname,tlname ,schoolname from
teachers,schools where
teachers.schoolid=schools.schoolid and tfname=“khaild” and
tlname =“shukry”;
ليست هناك تعليقات:
إرسال تعليق