Download as pdf or txt
Download as pdf or txt
You are on page 1of 21

‫مبادئ قواعد البيانات العالئقية‬

‫نموذج الكيان والعالقة الرابطة‬


‫إلنشاء قاعدة بيانات سوف ندرس المراحل التالية‪:‬‬
‫تصميم قاعدة البيانات‬
‫(رسم نموذج الكيان والعالقة الرابطة)‬
‫‪ERD‬‬

‫تحويل نموذج الكيان والعالقة‬


‫الرابطة إلى جداول‬

‫تخزين قاعدة البيانات في الحاسب‬


‫عن طريق برنامج معين‬

‫تقــــــاريـــر‬ ‫استعـــــــــالم‬
‫تحديث البيانات‬
‫مثل طباعة تقرير عن‬ ‫مثال االستعالم عن معلومات‬
‫أرباح الشركة لعام‬ ‫إضافة ‪ -‬حذف ‪ -‬تعديل‬ ‫المريض بإدخال رقم هذا‬
‫‪2007‬‬ ‫المريض‬
‫فلنبدأ اآلن بالمرحلة األولى وهي تصميم قاعدة البيانات‬
‫في هذه المرحلة سوف يكون هناك ‪ 4‬خطوات إلتمام التصميم ‪:‬‬

‫‪ -1‬تحديد الكيانات ‪ Entities‬ويرمز لها بالشكل‬

‫الكيان هو وحدة تمثل فئة أو مجموعة من األشياء أو الكائنات أو ألنشطة لها مواصفات (خصائص)‬
‫تصفها وتخصها ونسميه باسم مفرد مثل ‪ :‬المريض – الطالب‪ -‬القسم ‪ -‬الغرف‬
‫هذه الخطوة تحتاج إلى تفكير و وقت لتتناسب مع احتياجات المؤسسة المطلوب عمل قاعدة بيانات لها‬

‫مثال قاعدة بيانات مركز تدريب‪:‬‬


‫اآلن نحاول تطبيق هذه الخطوة ‪ ،‬فنرى ماذا يحتاج المركز ؟؟ أو ما هي الكيانات الرئيسية التي يجب أن‬
‫تخدمها قاعدة البيانات التي نريد تصميمها ؟؟ ‪ ..‬فنجد أن هناك ‪ 3‬كيانات وهي المتدربة ‪ ،‬المدربة ‪ ،‬والدورة‬
‫‪ ..‬وذلك بشكل مبسط ‪.‬‬
‫المتدرب‬

‫المدرب‬ ‫الدورة‬
‫‪ -2‬تحديد الخصائص (الصفات) ‪ Attributes‬ويرمز لها بالشكل ‪:‬‬

‫الخاصية أو الصفة هي صفة تصف كيان معين مثل (رقم الطالب يصف الكيان الطالب) ويجب‬
‫أن يكون لكل كيان صفة خاصة تميزة عن غيره نسميها المفتاح األساسي ‪Primary Key‬‬
‫إذن المفتاح األساسي هو أحد خصائص أو صفات الكيان وتكون قيمته وحيدة في كل سجل والتتكرر‬
‫في أي سجل آخر من نفس الكيان ونميزه في الرسم بوضع خط تحته‪.‬‬
‫مالحظة‪ :‬عند تحديد الصفات لكيان ما نختار الصفات التي تخص هذا الكيان بعينة والتخص غيره‬

‫اآلن نحاول تطبيق هذه الخطوة على مثالنا ‪:‬‬


‫‪ ،‬ونضك حلكل مفتكا‬ ‫• المتدربين ‪ :‬اسم المتدرب ‪ ،‬تاريخ الميالد ‪ ،‬السككن ‪ ،‬رقكم الهكات‬
‫أساسي ليميز كل متدرب عن اآلخر وهو الرقم األكاديمي والنض هنكا اسكم الكدورة ألن‬
‫هذه صفة تخص الدورة والتخص المتدرب ‪.‬‬
‫• المدربين ‪ :‬اسم المدرب ‪ ،‬التخصص ‪ ،‬مصدر التخصص ‪ ،‬السكن ‪ ،‬رقكم المنكزل ‪ ،‬ونضك‬
‫أساسي ليميز كل مدرب عن اآلخر وهو رقم المدرب والنضك هنكا اسكم‬ ‫أيضا حلل مفتا‬
‫الدورة ألن هذه صفة تخص الدورة والتخص المدرب ‪.‬‬
‫أساسكي لتميكز‬ ‫• الدورات ‪ :‬اسم الدورة ‪ ،‬عدد ساعات الدورة ‪ ،‬و نض أيضا حلكل ممفتكا‬
‫كل دورة عن األخرى وهو رقم الدورة ‪.‬‬
‫السكن‬
‫تاريخ الميالد‬
‫رقم الهاتف‬

‫اسم المتدرب‬
‫المتدرب‬

‫الرقم األكاديمي‬

‫السكن‬

‫مصدر التخصص‬ ‫رقم الهاتف‬

‫التخصص‬
‫المدرب‬

‫اسم المدرب‬

‫رقم المدرب‬

‫الدورة‬

‫اسم الدورة‬ ‫عدد ساعات الدورة‬


‫الصفة المركبة ‪:‬‬
‫يوجد هناك صفات من الممكن تلسيمها إلى اكثر من قسم مثل االسم فيلسم إلى ‪:‬‬
‫االسم األول ‪ ،‬اسم األب ‪ ،‬اسم العائلة ‪ ،،،‬فتسمى مثل هذه الصفة صفة مركبة‬
‫‪ Composite Attribute‬وتمثل بالشكل التالي‬

‫الصفة متعددة الليمة ‪:‬‬

‫وتسمى‬ ‫دائما الصفة التي لها اكثر من قيمة ترسم بهذا الشكل‬
‫‪.‬‬ ‫فممكن أن يكون للطالبة اكثر من رقم هات‬ ‫‪ Multivalued‬مثل رقم الهات‬

‫نطبق هذه التغييرات على النموذج السابق فيكون كالتالي ‪:‬‬


‫السكن‬
‫تاريخ الميالد‬
‫رقم الهاتف‬
‫األول‬
‫اسم المتدربين‬
‫األب‬ ‫المتدربين‬

‫العائلة‬ ‫السجل األكاديمي‬

‫السكن‬

‫مصدر التخصص‬ ‫رقم الهاتف‬

‫التخصص‬
‫المدربين‬

‫اسم المدرب‬

‫رقم المدرب‬
‫األول‬

‫األب‬ ‫العائلة‬
‫الدورات‬

‫اسم الدورة‬ ‫عدد ساعات الدورة‬


‫‪ -3‬وضع العالقات ‪. Relationship‬ويرمز لها بالشكل التالي ‪:‬‬

‫العالقة الرابطة هي العالقة التي تربط بين الكيانات وتمثل عالقة رابطة في العالم المصغر الذي تمثله‬
‫قاعدة البيانات وتهتم قواعد البيانات بشكل كبير جدا بالعالقات الرابطة بين الكيانات ألنها تعبر عن الروابط‬
‫بين البيانات في الواقع وتمثل العالقة غالبا بفعل مضارع‬

‫لنطبق ذلك على المثال السابق ونربط الكيانات لدينا بعالقات‪:‬‬


‫السكن‬
‫تاريخ الميالد‬
‫رقم الهاتف‬
‫األول‬
‫اسم المتدرب‬
‫األب‬ ‫المتدربين‬

‫العائلة‬ ‫السجل األكاديمي‬

‫السكن‬

‫مصدر التخصص‬ ‫رقم الهاتف‬


‫يدرسون‬

‫التخصص‬
‫المدرب‬

‫اسم المدرب‬

‫رقم المدربة‬ ‫يتدربون‬


‫على‬
‫األول‬

‫األب‬ ‫العائلة‬
‫الدورة‬

‫اسم الدورة‬ ‫عدد ساعات الدورة‬


‫‪ -4‬تحديد نوع العالقة بتحديد نسبة المشاركة ‪: Cardinality ratio‬‬

‫أوالا‪ -‬عالقة واحد إلى واحد‬


‫‪One to One‬‬
‫يرمز لها بــ ‪1:1‬‬
‫يكون في هذه العالقة لكل سجل في الكيان األول سجل مطابق واحد في الكيان الثاني وكل سجل في الكيان‬
‫الثاني له سجل مطابق واحد في الكيان األول‬
‫مثال‪:‬‬
‫•شركة تتكون من عدة أقسام ‪ ،‬بحيث لكل قسم مدير واحد وكل مدير يرأس قسم واحد فتكون العالقة بين‬
‫كيان المدير وكيان األسام عالقة واحد إلى واحد‪.‬‬

‫‪1‬‬ ‫‪1‬‬
‫القسم‬ ‫‪1‬‬ ‫المدير ‪1‬‬
‫‪ -4‬تاب تحديد نوع العالقة بتحديد نسبة المشاركة ‪: Cardinality ratio‬‬

‫ثانيا ا ‪ -‬عالقة واحد إلى متعدد‬


‫‪One to Many‬‬
‫يرمز لها بــ ‪1:M‬‬
‫يكون في هذه العالقة لكل سجل في الكيان األول عدة سجالت مطابقة في الكيان الثاني وكل سجل في‬
‫الكيان الثاني له سجل مطابق واحد في الكيان األول‬
‫مثال‪:‬‬
‫•حضانة أطفال كل طفل يعتنى به من قبل مربية واحدة فقط بينما المربية ممكن أن تكون مسؤولة عن‬
‫أكثر من طفل فتكون العالقة بين المربيات و األطفال عالقة واحد إلى متعدد‬

‫‪M‬‬ ‫‪1‬‬
‫الطفل‬ ‫المربية‬
‫‪1‬‬ ‫‪1‬‬
‫‪ -4‬تاب تحديد نوع العالقة بتحديد نسبة المشاركة ‪: Cardinality ratio‬‬

‫ثالثا ا ‪ -‬عالقة متعدد إلى متعدد‬


‫‪Many to Many‬‬
‫يرمز لها بــ ‪M:N‬‬
‫يكون في هذه العالقة لكل سجل في الكيان األول عدة سجالت مطابقة في الكيان الثاني وكل سجل في‬
‫الكيان الثاني له عدة سجالت مطابقة في الكيان األول ‪.‬‬
‫مثال ‪ :‬الجامعة ‪ ،‬يتم تدريس عدة مقررات ‪ ،‬بحيث المقرر الواحد يمكن أن يسجل فيه أكثر من طالب ‪،‬‬
‫ويمكن للطالب أن يدرس أكثر من مقرر‪.‬‬
‫إذن العالقة بين كيان الطالب وكيان المقرر عالقة متعدد إلى متعدد‬
‫‪M‬‬ ‫‪1‬‬
‫الطالب‬ ‫‪1‬‬ ‫المقرر ‪N‬‬

‫لنطبق ذلك على مثال مركز التدريب السابق ونحدد أنواع العالقات كالتالي‪:‬‬
‫لنأخذ العالقة بين المدربين والدورات فأسأل نفسك سؤالين ‪:‬‬
‫السؤال األول ‪ :‬هل المدرب الواحد ممكن أن يعطي اكثر من دورة في نفس الوقت أم دورة واحدة؟‬
‫السؤال الثاني ‪ :‬هل الدورة الواحدة يعطيها اكثر من مدرب أم مدرب واحد ؟‬
‫نجيب على السؤال األول فنقول أن المدرب الواحد ممكن أن يعطي اكثر من دورة ‪.‬‬
‫نجيب على السؤال الثاني فنقول أن الدورة الواحدة يعطيها أو يدرب عليها اكثر من مدرب ‪.‬‬
‫فمن هذين السؤال تنتج العالقة التالية ‪M:N:‬‬
‫لنأخذ العالقة بين المتدربين والدورات فأسأل نفسك سؤالين ‪:‬‬
‫السؤال األول ‪ :‬هل المتدرب الواحد ممكن أن ياخذ اكثر من دورة أم دورة واحدة فقط ؟‬
‫السؤال الثاني ‪ :‬هل الدورة الواحدة ممكن أن تشمل اكثر من متدرب أم متدرب واحد فقط ؟‬
‫نجيب على السؤال األول فنقول أن المتدرب الواحد ممكن أن ياخذ اكثر من دورة ‪.‬‬
‫نجيب على السؤال الثاني فنقول أن الدورة الواحدة ممكن أن تشمل اكثر من متدرب‪.‬‬
‫فتنتج العالقة التالية ‪M:N:‬‬
‫السكن‬
‫تاريخ الميالد‬
‫رقم الهاتف‬
‫األول‬
‫اسم المتدرب‬
‫األب‬ ‫المتدرب‬

‫العائلة‬ ‫السجل األكاديمي‬

‫‪M‬‬
‫السكن‬

‫مصدر التخصص‬ ‫رقم الهاتف‬


‫يدرسون‬

‫التخصص‬
‫المدرب‬

‫اسم المدرب‬
‫‪M‬‬ ‫‪N‬‬
‫رقم المدرب‬ ‫يتدربون‬
‫على‬
‫األول‬ ‫‪N‬‬

‫األب‬ ‫العائلة‬
‫الدورة‬

‫اسم الدورة‬ ‫عدد ساعات الدورة‬


‫إذن المرحلة األولى وهي مرحلة التصميم ورسم نموذج الكيان والعالفة الرابطة‬
‫تمر بأربع خطوات هي ‪:‬‬
‫‪ -1‬تحديد الكيانات‪.‬‬
‫‪ -2‬تحديد الصفات أو الخصائص لهذه الكيانات وفي هذه المرحلة البد من تحديد‬
‫الصفة التي تعد مفتاح أساسي لهذا الكيان‬
‫‪ -3‬ربط الكيانات بعالقات‬
‫‪ -4‬تحديد نوع هذه العالقات‬
‫الرموز اللياسية المستخدمة في تصميم نموذج الكيان والعالقة الرابطة‪:‬‬

‫الرمز‬ ‫المفهوم‬
‫الكيان‬

‫العالقة الرابطة‬

‫الخاصية أو الصفة‬

‫صفة تمثل مفتاح أساسي‬


‫ـــــــــ‬
‫صفة ممكن أن يكون لها أكثر من قيمة‬

‫صفة مركبة‬
‫تطبيق قاعدة بيانات المستشفى المصغر‬
‫أرسم ‪ ERD‬الالزم لتمثيل بيانات المرضى في أحد المستشفيات واألطباء المعالجون‬
‫مشتمال رقم المريض واسمه ورقم الغرفة المقيم بها ورقم التليفون للغرفة وعدد‬
‫األسرة بها واسم رقم الدواء المنصرف له وكذلك رقم الطبيب واسمه وتليفونه‬
‫وتخصصه؟‬
‫حل المسألة األولى‬
‫األول‬

‫األب‬ ‫اسم المريض‬ ‫المريض‬

‫العائلة‬ ‫رقم المريض‬

‫‪M‬‬ ‫‪M‬‬
‫‪M‬‬
‫رقم الهاتف‬ ‫يعالج‬
‫‪N‬‬ ‫يأخذ‬

‫التخصص‬
‫الطبيب‬
‫يرقد‬
‫اسم الطبيب‬ ‫‪N‬‬
‫‪1‬‬
‫الرقم‬
‫األول‬

‫األب‬ ‫العائلة‬
‫الدواء‬

‫عدد األسرة‬ ‫الغرفة‬ ‫الرقم‬


‫رقم الدواء‬ ‫اسم الدواء‬

‫رقم الهاتف‬
‫طريقة تحديد نوع العالقة في المثال السابق‪:‬‬

‫العالقة بين الطبيب والمريض الطبيب يعالج أكثر من مريض والمريض يكون تحت إشراف اكثر من طبيب‬
‫إذن تكون العالقة متعدد إلى متعدد‬

‫العالقة بين الدواء والمريض الدواء يأخذه أكثر من مريض والمريض يأخذ أكثر من دواء‬
‫إذن تكون العالقة متعدد إلى متعدد‬

‫العالقة بين الغرفة والمريض الغرفة يرقد بها أكثر من مريض والمريض يرقد في غرفة واحدة‬
‫إذن تكون العالقة واحد إلى متعدد ‪ :‬واحد من جهة الغرفة ومتعدد من جهة المريض‬
‫أرسمي ‪ ERD‬الالزم لتسجيل مخالفات المرور‬
‫حيث يتم تحرير مخالفة للمخالف مبينا بها رقم‬
‫المخالفة وتاريخها ونوعها وقيمة الغرامة ومكان المخالفة‬
‫ورقم السجل المدني للمخالف وجهة عمله وعنوانه واسم‬
‫ورقم الشرطي الذي حرر المخالفة ؟‬

You might also like