كورسات تعليمية

دورة احترافية في قواعد البيانات اكسس تعلمها بسهولة الدرس السادس

  1. التعرف العلاقة بين الجداول.
  2. أنواع العلاقات.
  3. العلاقة One to One.
  4. الاستفادة من العلاقةOne to One  لعمل Query.
  5. العلاقة One to Many.
  6. الاستفادة من علاقة One to Many في عمل Form.
  7. العلاقة Many to Many.
  8. البدء في المشروع المتكامل.
 تمرين مطلوب عمل الأتي: مطلوب إنشاء قاعدة بيانات جديدة باسم ” العلاقات و أهميتها للمبرمج “.

1- العلاقة بين الجداول

مقالات ذات صلة

من القواعد الأساسية في الـ Access انه على المبرمج تفتيت قاعدة البيانات إلى جداول صغيرة ( أي صغيرة في عدد الحقول و ليس صغيرة في عدد السجلات ) و ذلك للأسباب الآتية:

  1. عندما تكون عدد الحقول صغيرة في الجدول يسهل الاستعلام منه.
  2. منع تكرار إدخال البيانات المتشابه اكثر من مرة.
  3. الأمن و السرية.

ثم بعد تفتيت قاعدة البيانات الى جداول عديدة يتم عمل Relationship بينها.

أهداف العلاقات:

  1. عمل استعلام على اكثر من جدول طالما بينهم Relationship.
  2. عمل نموذج على اكثر من جدول طالما بينهم Relationship.
  3. عمل تقرير على اكثر من جدول طالما بينهم Relationship.

2- أنواع العلاقات

  1. One to One .
  2.  One to Many.
  3.  Many to Many.

3- العلاقة One to One

مثال
  • بفرض أن لدنا جدول ” بيانات شخصية ” تصميمه كالأتي:
كود الموظف  Text
اسم الموظف  Text
العنوان  Text
  • جدول ” بيانات مالية ” تصميمه كالأتي:
كود الموظف  Text
المرتب  Number
الصافيNumber

نلاحظ أن العلاقة بين الجدولين ” One to One ” حيث ان كل سجل في جدول ” البيانات الشخصية ” يقابله و يكمله سجل في جدول ”  البيانات المالية.

شروط إنشاء هذه العلاقة:

  1. أن يكون هناك حقل مشترك ( و هو في حالتنا هذه كود الموظف ).
  2. أن يكــون هنــاك حقـل مشــــترك ” Primary Key ” في إحـدى الجدولين .
  3. المقصود بالـ ” Primary Key “:
    1. حقل لا يمكن أن تكرر البيانات  بداخله.
    1. لا يمكن أن يترك الحقل فارغاً بدون إدخال بيانات.
    1. شرط من شروط العلاقات.

الجدول الذي به Primary Key يسمى ” Primary Table “، الجدول الأخر يسمى ” Related Table “.

الخطوات:

  1. يفتح جدول ”  البيانات الشخصية ” في وضع الـ Design View.
  2. نضيء حقل ” كود الموظف “.
  3. نـضـغـط عـلى علامة المـفتاح ” Primary Key ” فيكـون بالتالـي ” Primary Table “
  4. نغلق هذا الجدول.
  5. يفتح جدول ”  البيانات المالية ” في وضع الـ Design View.
  6. نضيء حقل ” كود الموظف “.
  7. نجعل كود الموظف مفهرس مع عدم التكرار ( No Duplicates ) و ذلك من خلال خاصية ” Indexed ” الموجودة بـ ” Field Properties “ثم نغلق الجدول.
  8. نفتح قائمة Tools و نختار Relationships.
  9. تظهر نافذة ” Show Table ” بها أسماء الجدولين.
  10. أشير إلى جدول ” البيانات الشخصية ” ثم Add.
  11. أشير إلى جدول ” البيانات المالية ” ثم Add ثم بعد ذلك Close.
  12. نسحب كود الموظف من جدول ” البيانات الشخصية ” و نضعه على كود الموظف الموجود في جدول ” البيانات المالية “.
  13. تظهر نافذة ” Relationships ” بها الأتي:
    1. Enforce Referential Integrity: نشـــطها ( أي فرض تكــامـل مرجـعـي بـين الجدولين ).
    1. Cascade Update Related Fields:    أنشطها ( بمعنى إذا عدلنا كود الموظف في جدول ” البيانات الشخصية ” يتغير أيضاً كود الموظف في جدول ” البيانات المالية “.
    1. Cascade Delete Related Record:   أنشــطها ( إذا حـذفنا سجل من جدول ” البيانات الشخصية ” يحذف تلقائياً سجل من جدول ” البيانات المالية”.
  14. ثم Create.
  15. نلاحظ ظهور علاقة ” One to One ” ثم Save، بعد ذلك نغلق هذه الشاشة ( Relationships ).

4- الاستفادة من العلاقةOne to One  لعمل Query

الخطوات:

  1. Query   New   Design View.
  2. نعمل Add لجدول “البيانات الشخصية ” و Add لجدول ” البيانات المالية ” ثم Close.
  3. نسحب كود الموظف و اسم الموظف من جدول” البيانات الشخصية “.
  4. نسحب المرتب من جدول” البيانات المالية “.
  5. نكتب أمام ” Criteria ” 100
  6. يحفظ الـ Query باسم مناسب.

5- العلاقة One to Many

يقصد بها أن كل سجل في جدول ما، يقابله اكثر من سجل في الجدول الأخر.

مثال
  • بفرض أن لدينا جدول ” اجماليات الفواتير ” تصميمه كالأتي:
كود الفاتورة  Text ( Primary Key )
إجمالي قيمة الفاتورةNumber

يتم إدخال البيانات الأتية:

كود الفاتورةإجمالي قيمة الفاتورة
1008000
2003000
3002000
  • جدول ” تفاصيل الفواتير ” تصميمه كالأتي:
كود الفاتورة  Text (مفهرس مع الكرار)
اسم الصنفText
القيمةNumber

يتم إدخال البيانات الأتية:

كود الفاتورةاسم الصنفالقيمة
100سجاد4000
100موكت3000
100ستائر1000
200سجاد2000
200موكت1000
300سجاد2000

نلاحظ أن العلاقة بين الجدولين ” One to Many ”  

الخطوات:

  1. يفتح جدول ” إجمالي الفواتير ” في وضع الـ Design View.
  2. نضيء حقل ” كود الفاتورة” و نجعله Primary Key، نغلق هذا الجدول.
  3. يفتح جدول ”  تفاصيل الفواتير ” في وضع الـ Design View.
  4. نضيء حقل ” كود الفاتورة “، ثم نجعل كود الفاتورة مفهرس مع التكرار (Duplicates Ok )،ثم نغلق هذا الجدول.
  5. نفتح قائمة Tools و نختار Relationships.
  6. نفتح نافذة ” Show Table ” من خلال قائمة Relationships.
  7. أشير إلى جدولي ” اجماليات الفواتير ” و ” تفاصيل الفواتير ” ثم Add ثم بعد ذلك Close.
  8. نسحب كود الفاتورة من جدول ” اجماليات الفواتير ” و نضعه على كود الفاتورة الموجود في جدول ” تفاصيل الفواتير “.
  9. تظهر نافذة ” Relationships ” ثم Create.
  10. نلاحظ ظهور علاقة ” One to Many ” ثم Save، بعد ذلك نغلق هذه الشاشة ( Relationships ).

6- الاستفادة من علاقة One to Many في عمل Form

الخطوات:

  1. يتم عمل نموذج تلقائي Columnar على جدول “اجماليات الفواتير ” و حفظه.
  2. يتم عمل نموذج تلقائي Tabular على جدول “تفاصيل الفواتير ” و حفظه.
  3. يفتح نموذج ” اجماليات الفواتير ” في وضع الـ Design View و يتم توسيع القسم الخاص بالـ Details.
  4. انشط Wizard Control  في صندوق الأدوات، ثم اختار أداة Subform ثم أضعها إلى الـ Form ثم احفظ هذا العمل.
  5. تظهر نافذة ”  Subform/Subreport Wizard” ثم افتح الـ Combo و اختار ” تفاصيل الفواتير ” ثم Next.
  6. أعطى اسم للـ Subform ثم Finish.
  7. للتأكد أتحول إلى وضع الـ Design View.
  8. نلاحظ الأتي:
    1. القسم العلوي بها اجماليات الفواتير، و القسم السفلي به تفاصيل الفواتير.
    1. وجود عدد (2) Data Control.

7- العلاقة Many to Many

هي عبارة عن علاقتين One to Many.

مثال
  • جدول ” الدارسين ” تصميمه كالأتي:
كود الدارس  Text (Primary Key)
اسم الدارسText
التليفونText

على أن يتم إدخال 4 سجلات على الأقل.

  • جدول ” الدورات ” تصميمه كالأتي:
كود الدورة  Text (Primary Key)
اسم الدورةText

على أن يتم إدخال 3 دورات.

  • العلاقة بين هذين الجدولين One to Many، حيث أن الدارس يمكن ان يدرس اكثر من دورة. و من ناحية أخرى يمكن أن يلتحق بالدورة اكثر من دارس.أي أن هذه العلاقة Many to Many بشرط إنشاء جدول ثالث يربط بين هذين الجدولين يسمى هذا الجدول ” جدول رابط “.
  • الجدول الرابط تصميمه كالأتي:
كود الدارس Text (مفهرس مع التكرار)
كود الدورةText (مفهرس مع التكرار)

يتم إدخال البيانات الآتية في الجدول الرابط:

كود الدارسكود الدورة
1200
1300
2300
2200
3100
3200
  • عند عمل علاقة نربط كود الدارس في جدول ” الدارسين ” مع كود الدارس في الجدول ” الرابط “.
  • عند عمل علاقة نربط كود الدورة في جدول ” الدورات ” مع كود الدورة في الجدول ” الرابط “.

8- البدء في المشروع المتكامل

 تمرين

مطلوب عمل الآتي:

  1. إنشاء قاعدة بيانات جديدة باسم “مشروع المخازن “.
  2. يتم عمل نموذج من وضع الـ Design :
  3. و لا يكون مؤسس على Table أو Query.
  4. على أن يوضع بها  Label مكتوب عليه آية قرآنية .
  5. يحفظ هذا النموذج باسم ” F1 “.
  6. عمل جدول باسم ”  الأقسام الرئيسية ” تصميمه كالأتي:
كود القسمText (Primary Key)
اسم القسمText
صورة القسمOLE ( صورة تعبر عن القسم و ليكن صور أقسام السوبر ماركت )
  • على أن يتم إدخال بيانات 4 أقسام ( قسم رجالي – قسم حريمي – قسم أطفال – قسم أغذية و مشروبات ).
  • عمل جدول باسم ” العملاء ” تصميمه كالأتي:
كود العميلText (Primary Key)
اسم العميلText
العنوانText
المدينةText ( القاهرة –  المنصورة – المحلة … وهكذا )
التليفونText
  • يتم إدخال سجلات على أن تكون أكواد العملاء ( 100-200-300 … (.
  • مراعاة التكرار للمدينة.
  • عمل جدول باسم ” الموردين ” تصميمه كالأتي:
كود الموردText (Primary Key)
اسم الموردText
العنوانText
المدينةText ( القاهرة –  المنصورة – المحلة … وهكذا )
التليفونText
  • على أن يتم إدخال بيانات 7 سجلات.

اظهر المزيد

مقالات ذات صلة

زر الذهاب إلى الأعلى