قواعد البيانات (1) PDF
Document Details
Uploaded by ReputableUnicorn
كلية التربية النوعية
2024
قسم تكنولوجيا التعليم والمعلومات (ش.معلم حاسب)
Tags
Summary
This document is a course outline for a Database Management Systems (DBMS) course, covering topics such as database introduction, relational databases, entity-relationship diagrams (ERDs), and schema conversion. The course is part of the educational program at the College of Specialized Education.
Full Transcript
قواعد البيانات ()1 إعداد قسم تكنولوجيا التعليم والمعلومات (ش.معلم حاسب) كلية التربية النوعية العام الجامعى 2025 / 2024م 1 الفهــــرس الصفحة العنوان...
قواعد البيانات ()1 إعداد قسم تكنولوجيا التعليم والمعلومات (ش.معلم حاسب) كلية التربية النوعية العام الجامعى 2025 / 2024م 1 الفهــــرس الصفحة العنوان الفصل 3 مقدمة في قواعد البيانات األول 22 قواعد البيانات العالئقية الثاني 30 نموذج الكيانات والعالقات الثالث 51 خوارزمية التحويل من الرابع ERDالي Schema 75 Microsoft Access الخامس 83 ملحق التطبيقات تمارين 2 قواعــــد بيانات 1 الفصل األول مقدمة في قواعد البيانات 3 قاعدة البيانات Database هي مجموعة من البيانات و المعلومات المخزنة بطريقة نموذجية ودون تكرار والمتصلة مع بعضها (متشابكة ) وفق عالقات و يدير قواعد البيانات نظام يسمى نظام إدارة قواعد البيانات. تعريف آخر : قاعدة البيانات أو قاعدة المعطيات هي مجموعة من عناصر البيانات المنطقية المرتبطة مع بعضها البعض بعالقة رياضية وتتكون قاعدة البيانات من جدول واحد أو أكثر,ويتكون الجدول من سجل)صف ( قواعد البيانات أو أكثرويتكون السجل من (حقل) أو أكثر ومثال عليه السجل الخاص بموظف معين يتكون من عدة حقول مثل رقم الموظف -اسم الموظف -درجة الموظف -تاريخ التعيين -الراتب -والقسم على نحو ّ منظم التابع له ،وغير ذلك من بيانات الموظفين تخزن في جهاز الحاسوب َ حيث يقوم برنامج )حاسوب ( يسمى محرك قاعدة البيانات )(database engine بتسهيل التعامل معها والبحث ضمن هذه البيانات وتمكين المستخدم من اإلضافة والتعديل عليها. يتم استرجاع البيانات باستخدام أوامر من لغة االستعالم حيث تعتبر معلومات تساعد في عملية اتخاذ القرار. نظام إدارة قواعد البيانات هو البرنامج الذي يتم من خالله استرجاع البيانات ،أو اإلضافة أو التعديل عليها ،أو حذفها ،حيث يقوم البرنامج بالربط بين المستخدم وبين محرك قاعدة البيانات ألداء تلك المهمة . وفي حال وجود عالقة بين جداول قاعدة البيانات يسمى هذا بنظام قواعد البيانات العالئقية (نظام إدارة قواعد البيانات العالئقية) الهدف األساسي لقواعد البيانات هو التركيز على طريقة تنظيم البيانات وليس على التطبيقات الخاصة ,أي أن الهدف الرئيسي لمصمم قاعدة البيانات هو تصميم البيانات 4 بحيث تكون خالية من التكرار ويمكن استرجاعها وتعديلها واإلضافة عليها دون المشاكل التي يمكن أن تحدث مع وجود التكرار فيها. نظرة عامة واصطالحات يشير مصطلح «قاعدة بيانات» رسميًا إلى مجموعة من البيانات المترابطة وطريقة تنظيمها.تُدار عملية الوصول إلى هذه البيانات من خالل «نظام إدارة قاعدة البيانات» Database Management Systems DBMSالذي يتألف من مجموعة متكاملة من برمجيات الحاسب التي تسمح للمستخدمين بالتفاعل مع قاعدة بيانات واحدة أو أكثر وتمنح الوصول إلى كل البيانات المحتواة في قاعدة البيانات (على الرغم من وجود قيود تحد من الوصول إلى بيانات محددة). يمنح نظام إدارة قاعدة البيانات مجموعة وظائف تسمح بإدخال كميات كبيرة من المعلومات وتخزينها واستعادتها ،ويوفر طرق إلدارة كيفية تنظيم المعلومات. يُستخدم مصطلح «قاعدة بيانات» عادة ً لإلشارة إلى كل من قاعدة بيانات ونظام إدارة قاعدة البيانات ال ُمستخدم إلدارتها ،وذلك بسبب العالقة الوثيقة بينهما. يُستخدم مصطلح قاعدة البيانات غالبًا خارج مجال تكنلوجيا المعلومات المهنية لإلشارة إلى أي مجموعة من البيانات المترابطة (مثل جدول بيانات أو مجموعة بطاقات مفهرسة)، إذ تستوجب متطلبات االستخدام والحجم عادة ً استخدام نظام إلدارة قواعد البيانات هذه. تقوم نظم إدارة قواعد البيانات الموجودة بمهام متنوعة تسمح بإدارة قاعدة البيانات وبياناتها . وتُصنف هذه المهام إلى أربع مجموعات وظيفية: تعريف البيانات -إنشاء ،وتعديل ،وحذف التعاريف التي تحدد تنظيم البيانات. تحديث -إضافة ،وتعديل ،وحذف البيانات الفعلية. استرداد -توفير معلومات بصيغة يمكن استخدامها مباشرة أو لمعالجة أكثر من قبل خزن بها فيتطبيقات أخرى كما يمكن توفير البيانات المستردة بالصيغة نفسها التي ت ُ ّ قاعدة البيانات أو بصيغة جديدة نحصل عليها من خالل تعديل أو دمج بيانات موجودة في قاعدة البيانات. إدارة -تسجيل المستخدمين ومراقبتهم وتطبيق األمان على البيانات ومراقبة األداء والحفاظ على تكامل البيانات والتعامل مع ضبط التزامن واستعادة المعلومات التي أُتلفت بسبب حدث معين كالفشل غير المتوقع للنظام . 5 تعمل كل من قاعدة البيانات ونظام إدارتها بشكل يتوافق مع مبادئ نموذج قواعد بيانات محدد يشير مصطلح «نظام قاعدة البيانات» إلى كل من نموذج قاعدة البيانات ونظام إدارة قاعدة البيانات وقاعدة البيانات. فيزيائ ًيا مخدمات قواعد البيانات هي حواسيب مخصصة لالحتفاظ بقواعد البيانات الفعلية وتشغيل نظام إدارة قواعد البيانات والبرمجيات المتعلقة فيه فقط. تكون مخدمات قواعد البيانات عادة ً حواسيب متعددة المعالجات بذاكرة كبيرة ومصفوفة مستقلة متعددة األقراص تُستخدم من أجل التخزين الثابت. ضا أجهزة مسرعات قواعد البيانات الموصولة بمخدم واحد أو أكثر عن طريق تُستخدم أي ً قنوات عالية السرعة في بيئات معالجة معامالت كبيرة الحجم. توجد نظم إدارة قواعد البيانات في مركز أغلب قواعد بيانات التطبيقات. يمكن أن تُبنى نظم قواعد البيانات من أجل نواة(نظام تشغيل) مخصصة متعددة المهام مع دعم شبكي مدمج لكن نظم قواعد البيانات الحديثة تعتمد على نظام تشغيل معياري لتوفير هذه الوظائف. كبيرا فإن بائعي ذواكر التخزين والحواسيبً نظرا ألن نظم قواعد البيانات تشمل سوقًا و ً غالبًا ما يأخذون بعين االعتبار متطلبات هذه النظم ضمن خططهم التطويرية. يمكن تصنيف قواعد البيانات ونظم إدارتها وفقًا لنماذج قواعد البيانات التي يدعمانها (كالعالئقية أو ،) XMLوألنواع الحواسيب التي تعمالن عليها (امتدادًا من تجمع خوادم إلى الهواتف المحمولة) ولغات االستعالمات المستخدمة للوصول إلى قواعد البيانات فيها(مثل SQLأو )XQueryوهندستها الداخلية إذ تؤثر جميعها على األداء وقابلية التوسع والمرونة واألمان . 6 مجاالت قواعد البيانات: قواعد البيانات اصبحت عنصرا ً جوهرياًً في المجتمع المعاصر نحن نتعامل مع قواعد البيانات يوميا ً في جميع االنشطة : في الجامعة :الجداول والنتائج الدراسية في الفنادق :الحجز ودفع الحسابات في البنوك :المعامالت الحسابية من سحب وايداع في المحالت التجارية :الشراء البيع – استيراد – تصدير -واالستبدال قواعد البيانات التقليدية تتعامل مع معلومات نصية او معلومات رقمية مثال :الشرء من المحالت التجارية) سوبر ماركت( قواعد البيانات للوسائط المتعددة تتعامل مع الصور ومقاطع الصوت والفيديو مثال :نظم المعلومات الجغرافية ( GIS ) geographic information systemالذي يقوم بتخزين وتحليل الخرائط وبيانات الطقس وصوراألقمار الصناعية األهداف : يهدف هذا المقرر إلى تزويد الطالب بأساسيات نظم قواعد البيانات والتركيز على تعريف الطالب على المفاهيم األساسية والخصائص والنماذج واللغات الخاصة بقواعد البيانات. 7 اهمية قواعد البيانات : تخزين كم هائل من البيانات بطريقة دقيقة. تصنيف وتنظيم البيانات بحيث يسهل استرجاعها. ادخال التعديالت الالزمة علي البيانات. تحقيق السرية الكاملة للبيانات . وظائف قواعد البيانات: أ -إضافة معلومة أو بيان جديد إلى الملف ب -حذف البيانات القديمة والتي لم تعد هناك حاجة إليها ج -تغيير بيانات موجودة تبعا ً لمعلومات تم تحديثها د -البحث واالستعالم عن معلومات عامة أو معلومة محددة هـ -ترتيب وتنظيم البيانات داخل الملفات و -عرض البيانات في شكل تقارير أو نماذج منظمة ز -حساب المجموع النهائي أو المجموع الفرعي أو المتوسط الحسابي لبيانات مطلوبة مزايا أنظمة قواعد البيانات -1إمكانية التقليل من التكرار غير المبرر للبيانات -2إمكانية تجنب التناقض في البيانات -3تحقيق مبدأ المشاركة في البيانات . -4إمكانية تطبيق قيود األمن والسرية -5المحافظة على تكامل البيانات 8 نظام إدارة قواعد البيانات Database Management Systems DBMS هي مجموعة من البرامج التي تدير و تتحكم بعملية تخزين و استرجاع البيانات وكذلك توفر امكانية عدد كبير من المستخدمين من الوصول الى قاعدة البيانات و التعامل معها و ينظر اليها انها حلقة وصل بين المستخدمين وقاعدة البيانات حيث تقوم باستقبال طلبات المستخدمين ومن ثم نقلها الى قاعدة البيانات وتنفيذ البرامج الالزمة لتنفيذ هذه المتطلبات و من ثم تزويد المستخدم بالنتائج المطلوبة. مثل :اوراكل ،Oracleمايكروسوفت اكسس , SQL- MS Access SERVER , شكل يوضح نظام ادارة قواعد البيانات 9 وظائف نظام إدارة قواعد البيانات DBMS وتشترك معظم نظم إدارة قواعد البيانات في مجموعة من الوظائف منها: .1إضافة معلومات أو بيانات جديدة إلى ملف قاعدة البيانات. .2حذف بيانات معينة. .3تغيير (تعديل) البيانات الموجودة. .4ترتيب وتنظيم البيانات داخل ملف قاعدة البيانات. .5عرض البيانات على شكل نموذج أو تقرير. 10 مكونات نظام قاعدة البيانات: يقسم نظام قاعدة البيانات الى خمسة أقسام: -1المكونات المادية (:)Hardware وتشمل جميع األجهزة المادية في النظام مثل الحاسبات ،األجهزة الطرفية ،الطابعات وكذلك أجهزة االتصال في بيئة قاعدة البيانات الموسعة ...الخ. -2البرمجيات (:)Software وهي مجموعة البرامج المستخدمة في قاعدة البيانات ،وتقسم إلى ثالثة أقسام: أ -أنظمة التشغيل :وهي البرامج التي تقوم بإدارة األجهزة وتهيئتها للعمل وتمكين بقية البرامج من العمل مثلLinux, Unix, Windows.. ب -برنامج قاعدة البيانات :وهو البرنامج الذي يتولى إدارة قاعدة البيانات مثل Oracle, Sybase, DB2. ج -البرامج التطبيقية والبرامج المساعدة :وهي البرامج التي تقوم بعمليات االسترجاع والتخزين وكذلك استخراج التقارير ..... -3المستخدمون :وهم عبارة عن األشخاص الذين يقومون بالعمل في بيئة قاعدة البيانات وهم: أ -مدير النظام :وهو الشخص المسؤول عن إدارة عمل البيئة العامة التي يعمل بها نظام قاعدة البيانات ويقوم بما يلي: .1إدارة المستخدمين ومنح الصالحيات الستخدام النظام. .2إدارة اجهزة التخزين واألجهزة األخرى. .3متابعة عمل النظام ب -مدير قاعدة البيانات :وهو المسؤول عن إدارة قاعدة البيانات تشمل واجباته: -1تحديد متطلبات قاعدة البيانات من برامج وتجهيزات. -2متابعة نظام قاعدة البيانات وتنسيق عملية استخدامه. -3توفير األمن والحماية للنظام. 11 -تصميم آليات الم حافظة على قاعدة البيانات وتحديد اإلجراءات الالزمة لتوفير الخدمات للمستخدمين اآلخرين. ج -مصمم قاعدة البيانات :وهو الشخص (األشخاص) الذي يقوم بعملية تصميم قاعدة البيانات وتشمل واجباته: -1تحديد البيانات الواجب تخزينها في قاعدة البيانات. -2تصميم أفضل التراكيب لحفظ البيانات. -3تصميم قاعدة بيانات خالية من التكرار. -4تحديد طرق الوصول والمعالجة واالسترجاع للبيانات من خالل تصميم الشاشات والتقارير الواجب استخدامها. -5توثيق عملية التصميم وطرق الوصول للبيانات. د -المبرمجون ومحللو النظم :وهم األشخاص الذين يقومون بعملية تصميم البرامج وتنفيذها وتشمل واجباتهم: -1تصميم التطبيقات وتحويلها الى برامج بلغة(بلغات) برمجة حسب السياسات المقررة في عملية التصميم. -2تنفيذ وتطبيق تلك البرامج والتأكد من سالمتها. -3عمل الصيانة الالزمة لتلك البرامج. ه-المستخدم النهائي :وهو الشخص أو مجموعة األشخاص الذين يقومون بالعمل اليومي على النظام وتطبيق البرامج في مجال مثل االسترجاع، التعديل ،الحذف ،تنفيذ التقارير.....الخ. -4اإلجراءات والعمليات :وهي عبارة عن القوانين والتعليمات التي تحكم عمل قاعدة البيانات بشكل صحيح وتكون على شكل تعليمات موثقة بشكل واضح ومحدد. -5البيانات :وهي اهم مكونات النظام حيث تشمل مجموعة الحقائق المخزنة في قاعدة البيانات. وكون البيانات تكون تكون على شكل بدائي إذ البد من تحديد مكان وكيفية التخزين لهذه البيانات حتى تسهل عملية معالجتها واالستفادة منها وهذا عمل المصمم. 12 دورة الحياة لنظام قاعدة البيانات: -1الدراسة المبدئية للنظام القائم وتشمل ما يلي: أ -تحليل الوضع الحالي للمؤسسة ومعرفة طبيعية اإلجراءات المستخدمة والتعليمات وقواعد العمل. ب -تحديد المشاكل التي تواجه النظام المستخدم وكذلك القيود المادية مثل الطاقة البشرية والتمويل المتوفر لتطوير أو استبدال النظام الحالي. ت -تحديد األهداف الواجب تحقيقها والمزايا المطلوبة في النظام الجديد. -2تصميم قاعدة البيانات :وتعتبر هذه المرحلة من أهم المراحل في دورة حياة النظام إذ البد من بذل جهد كبير لتصميم النظام للوصول إلى نظام النظام عمل من المرجوة األهداف وتؤدي جيد وتشمل عملية التصميم ما يلي: أ-بناء نموذج المفاهيم وتشمل هذه العملية عدة خطوات مثل : .1تحليل البيانات ومتطلبات المستخدمين واإلجراءات المطلوبة. .2تعريف وتحديد البيانات وخصائصها وعالقتها مع بعضها في الصيغة المعيارية. -3رسم مخطط المفاهيم وهو عبارة عن نموذج رسومي يوصف كيانات النظام وعالقتها مع بعضها. -4تعديل النموذج بحيث يشمل اإلجراءات الرئيسة ،وقواعد عمليات اإلضافة والتعديل والحذف على البيانات والتقارير ،والشاشات ،ومقدار التشاركية وتوافقية البيانات.. ب-اختيار نظام إدارة قاعدة البيانات (:)DBMS ج-تحويل نموذج المفاهيم الى نموذج داخلي باالعتماد على نظام إدارة قاعدة البيانات (.)DBMS 13 د-التصميم المادي وتتم خالله عملية وضع مواصفات التخزين والوسائط المستخدمة في عملية التخزين وطرق الوصول للبيانات باالعتماد على نظام إدارة قاعدة البيانات (.)DBMS -3تنفيذ النظام :وخالل هذه المرحلة تتم إنشاء الجداول وكتابة جميع البرامج الالزمة لتنفيذ متطلبات من الشاشات المختلفة والتقارير المطلوبة..... -4عملية الفحص والتقييم للنظام وتشمل: أ -فحص قاعدة البيانات والتأكد من عملها بشكل صحيح. ب -تقييم عمل البرامج والتطبيقات المستخدمة. -5تطبيق النظام في مكان العمل :وتشمل هذه العملية عمليات إنشاء الجداول والمستخدمين والصالحيات ،وتحميل جميع البرامج والتطبيقات وتنفيذها في البيئة الحقيقة التي يجب أن يعمل بها النظام. -6متابعة عمل النظام :وهذه العملية تستمر طيلة فترة حياة النظام للتأكد من عمله بشكل صحيح وكذلك تعديل النظام ليتواءم مع المتطلبات الجديدة لبيئة العمل مثل تغير القوانين واألنظمة وقواعد العمل . نماذج قواعد البيانات: الهدف األساسي لقواعد البيانات هو التركيز على طريقة تنظيم البيانات وليس على التطبيقات الخاصة.أي أن الهدف الرئيسي لمصمم قاعدة البيانات هو تصميم البيانات بحيث تكون خالية من التكرار ويمكن استرجاعها وتعديلها واإلضافة عليها دون المشاكل التي يمكن أن تحدث مع وجود التكرار فيها. يتم ذلك عن طريق ايجاد ثالثة مستويات من التجريد أو النماذج لقواعد البيانات تسمى نماذج التطبيع (تسوية قاعدة البيانات) ،ويقصد بها جعل تركيبة البيانات أقرب للطبيعة التصنيفية. 14 وهناك تركيبات لقواعد البيانات حسب نوع العالقة الرياضية بين البيانات ومن هذه النماذج : -1النموذج الهرمي : Hierarchical Database Management Systems اي علي شكل شجرة مقلوبة جذرها في القمة وتخرج منه الفروع مثل شجرة العائلة وهي اقدم نموذج لقواعد البيانات المنطقية و قد صممت هياكلها من عالقات بين السجالت التي تشكل مستويات هرمية و لهذا تعبر هذه التركيبة عن نمط العالقات واحد – الى كثير فهي تستطيع ان تخزن عددا كبيرا من االجزاء و ان تعالج المعلومات بشكل كبير. للوصول الى اي سجل من سجالتها البد من البدء من اول سجل (الجذر) الى ان يصل الى السجل المطلوب شكل للنموذج الهرمي 15 عيوب النموذج الهرمي: -1يفتقد للمرونة و التجاوب الجيد مع المستخدم -2التعقيد في البرمجة -3ان البيانات تخزن في تركيب هرمي و بالتالي من الصعوبة اجراء تغير او تعديل على هذا التركيب -4التقدم دعما مناسبة لالستعالمات غير المهيكلة -2النموذج الثاني ( :النموذج الشبكي ) نظم ادارة قاعدة البيانات الشبكية Network Database Management Systems يتم تخزين البيانات في الهيكل الشبكي بصورة سالسل مترابطة من البيانات و بالتالي يمثل هذا الهيكل عالقات منطقية أكثر تعقيدا . و ال تزال تستخدم قواعد البيانات الشبكية مع نظم إدارة قواعد البيانات لنظم الحاسوب الكبيرة ،تمثل هذه القاعدة نمط عالقات الكثير الى –كثير بين السجالت . فهي مثل شبكة االنترنت وتتغلب علي معوقات التكوين الهرمي حيث تسمح ان يكون لالبن اكثر من اب. قواعد البيانات الشبكية يمكن الوصول الى اي سجل من سجالتها من اي نقطة . شكل للنموذج الشبكي 16 عيوب النموذج الشبكي : و من عيوبه ان غير مرن و صعب او معقد من ناحية البرمجة و الصيانة .اال انه يعالج المعلومات بشكل كفوء -3النموذج الثالث :نظم ادارة قاعدة البيانات العالئقية : Relational Database Management systems وهي من اكثر النماذج استخداما وانتشارا ًً وهو اعتماد عالقة محددة بين عناصر البيانات مثل أن تكون قيمة عنصر معتمدة على حاصل جمع عنصرين وهذا التركيب هو أنجح التراكيب المطبقة في عالم قواعد البيانات المعلوماتية وذلك بسبب إعطائه تنوع في نوع العالقة بين البيانات ألن احتمالية تنفيذ العالقات فيه أكبر من اي تركيب اخر. يتكون هيكل قاعدة البيانات العالئقية من جداول Tablesويتكون كل جدول من اعمدة تمثل الحقول fieldsوصفوف تمثل السجالت Recordsويتم ربط الجدول من خالل الحقول المفتاحية ( حقل المفتاح الرئيسي وحقل المفتاح الثانوي ) كما يمكنها بسهولة من ان تدمح معلومات من مختلف المصادر فهي اكثر مرونة من االنواع االخرى لقواعد البيانات. 17 البيانات Data : هي عبارة عن حقائق غير مرتبة يمكن تخزينها ولها معني ضمني . مثال احمد 40 , المعلومات Information: هي مجموعة من البيانات التي تم معالجتها في صورة لها معني . مثال :شخص اسمه احمد وعمره 40 ويمكن عرض قاعدة البيانات بالشكل التالي : -1الجدول -2السجل -الصف -3الحقل – العمود الحقل Field :هو وصف لمجموعة معينة من البيانات لها نفس النوع ،مثل حقل االسم ،حقل الرقم..، هو عمود بالجدول يصف مجموعة معينة من البيانات لها نفس النوع ،مثل حقل االسم ،حقل الرقم..، هو مجموعة من العناصر التي تكون السجل فعلى سبيل المثال كل سجل في جدول الموظفين يتكون من عدد من الحقول منها )) رقم الموظف ،اسمه ،تاريخ تعيينه((... فالحقل إذن هو بند محدد لمعلومة مفردة . وقد يكون محتوى الحقل قيم عددية ،وقت وتاريخ ،عملة ،قيم نصية) حرفية( ،قيمة منطقية) نعم ،ال(. 18 مثال ألحد جداول المرضى في احدى المستشفيات : أعمدة الطبيب المعالج الجنس رقم الحجرة رقم المريض اسم المريض نبيل 1 21 120 سامح المنياوي 1 25 121 حسين اسامة 2 27 210 منال سجالت محب 2 32 454 هالة نهى 1 21 630 هاني شكل الجدول المكون من صفوف واعمدة الحظ الجدول السابق يحتوي على نواتج من أكثر من جدول على سبيل المثال من جدول المرضى , جدول األطباء,غرف المستشفى ..... حيث يمكن االستغناء عن عمود اسم المريض واالكتفاء رقمه المسجل في قاعدة بيانات جدول المرضى كما يمكن التعويض عن اسم الطبيب المعالج برقمه المسجل في سجالت االطباء السجل Record :هو مجموعة من الحقول التي تمثل بيانات شئ معين مثل سجل الموظف الذي يحتوي على بياناته ،فجميع بيانات الموظف الواحد في العالقة تمثل سجل. هو صف من الجدول يحوي مجموعة من الحقول التي تمثل بيانات شئ معين مثل سجل الموظف الذي يحتوي على بياناته ،فجميع بيانات الموظف الواحد في العالقة تمثل سجل. هو عبارة مجموعة من المعلومات لكل عنصر من عناصر الجدول فلو كان الجدول خاص بمعلومات عن موظفين فأن كل صف من صفوف الجدول يعطي معلومات عن موظف محدد .فالسجل إذن هو مجموعة منسقة ذات معنى من المعلومات. 19 الجدول Table :هو مجموعة من الحقول والسجالت وتمثل الحقول اعمدة الجدول بينما تمثل السجالت صفوفه ،ويكون لكل جدول اسم خاص يناسب محتوياته. يتم إنشاء الجدول لكي يحتوي على معلومات عن جزء من قاعدة البيانات) نظام فرعي من النظام الكلي العام(فمثالً قاعدة بيانات لشركة معينة تتضمن مجموعة من الجداول منها) جدول معلومات موظفين ،جدول مبيعات ،جدول التسويق ،جدول المشتريات....(. العالقة Relation :هي الرابط الذي يربط الجداول ببعضها. 20 21 الفصل الثاني قواعد البيانات العالئقية 22 المجال Domain هو مجموعة القيم لحقل معين ،فمثالً رقم المتدرب يجب ان يكون عددا ً صحيحا ً واسم الطالب يجب ان يحتوي على قيم رمزية ونصية والمعدل التراكمي يجب ان يحتوي على عدد كسري وتاريخ الميالد يجب ان يكون مقبوالً بحيث ال يتجاوز عمر الطالب عند القبول عن 22سنة او الموظف من سن 18الى 60سنة المرتبات تدخل في قيمها العملة وهكذا .... المدى (المجال) في النموذج العالئقي للبيانات وهو مجموعة القيم لهذا الحقل ،فمثالً رقم المتدرب يجب ان يكون عددا ً صحيحاً ،واسم الطالب يجب ان يحتوي على قيم رمزية ،والمعدل التراكمي يجب ان يحتوي على عدد كسري ،وتاريخ الميالد يجب ان يكون مقبوالً بحيث ال يتجاوز عمر الطالب عند القبول عن 22سنة. وممكن ان يكون: -1النوع منطقي :ويأخذ إحدى الحالتين إما. False or True -2النوع الرقمي - :رقم صحيح -رقم عشري. -3النوع النصي :ممكن أن يحتوي على أرقام أو رموز. -4النوع الزمني :مخصص لتخزين بيانات من النوع الزمني. مثال يوضح قاعدة البيانات العالئقية و يفرض أن شخصا ً له سجل في األشخاص المسموح لهم باالستعارة الموضح في الجدول األول استعار كتابا ً من مقتنيات المكتبة فإن العالقة الناشئة عن هذا اإلجراء يمكن توضيحها كالتالي: 23 إلنشاء قاعدة بيانات سوف ندرس المراحل التالية: تصميم قاعدة البيانات المرحلة (رسم نموذج الكيان والعالقة الرابطة) ERD االولى المرحلة تحويل نموذج الكيان والعالقة الرابطة إلى جداول الثانية تخزين قاعدة البيانات في الحاسب عن طريق المرحلة برنامج معين الثالثة 24 أنواع البيانات إن اختيار نوع البيانات في الحقل من المهام الضرورية جدا ً والصعبة في بعض األحيان , فعند اختيار نوع البيانات النصية في حقا رقم الهاتف مثالً هو عين الصواب وذلك لعدة اعتبارات منها : ان رقم الهاتف قد يحتوي رقم داخلي كذلك فإن الخحم االفتراضي التخزيني للرقم أكبر من الحجم التخزيني للنص ,وبما أننا لن نجري أي عمليات حسابية على هذا الرقم فال داع لجعله من النوع الرقمي . أهم أنواع البيانات المستخدمة : بيانات نصية – مذكرة – بيانات رقمية – بيانات تاريخ ووقت – بيانات العمالت – بيانات الترقيم التلقائي – بيانات منطقية (نعم –ال ) – كائن – بيانات الرابط التشعبية – معالج البحث . -1نصtext هذا النوع من أنواع البيانات يسمح بإدخال بيانات رقمية ونصية والمسافات والرموز الخاصة ويسمح بحد أقصى 255حرف فى الحقل الواحد ال يمكن إجراء العمليات الحسابية على هذا النوع من البيانات. -2مذكرات Memo هذا النوع من أنواع البيانات يمكن أن يقبل بيانات نصية ورقمية حتى 65000حرف ويعيب هذا النوع من أنواع البيانات أنه ال يمكن إجراء االستعالمات عليهquery. -3األرقام Numbers ويقبل هذا النوع من أنواع البيانات األرقام سواء صحيحة integersأو أرقام عشرية fractionalويمكن إجراء العمليات الحسابية على هذا النوع من أنواع البيانات وال المالية. العمالت مع النوع هذا استخدام يستحب -4الوقت والتاريخdate/time تسمح بإدخال الوقت والتاريخ ويمكن إجراء العمليات الحسابية عليها. 25 -5العمالتcurrency يشبه نوع االرقام ويمكن إجراء العمليات الحسابية عليه ويمكن فيه إضافة نوع العمله بجوار األرقام به -6حقل الترقيم التلقائيauto number وفى هذا النوع يتم إنشاء أرقام متتالية وفريدة وال تتكرر ويتم إضافة هذا النوع تلقائيا. -7نعم -الyes/no يستخدم هذا النوع من البيانات عندما يكون للحالة احتمالن فقط أما نعم أو ال مثل هل حصل الموظف على دورات تدريبية اإلجابة هنا إما نعم أو ال ...ويظهر فيه check box إذا تم وضع عالمة صح تترجم إلى yesوإذا تم إزالة عالمة الصح تترجم إلىNo OLE object -8 الكائنات المرتبطة المضمنة وهو اختصار object linking and embeddingوهو يسمح بإرفاق كائن مثل ملف اكسيل أو صور أو ملف صوت وخالفه -9االرتباطات التشعبيةhyperlink ويمكن من خالله تخزين ارتباط تشعبي قد يكون عنوان ايميل أو موقع ويب او مسار لملف معين. مرفق attachment -10 يمكن من خاللها إرفاق مرفقات مثل الصور وغيرها من الملفات وأقصى حجم هو 700 KB 26 المفاتيح و أنواعها ()Keys يمثل مفهوم المفتاح Keyبصورة عامة على انه عنصر من عناصر البيانات أو حقل من السجل و يفيد في استرجاع المعلومات المخزنة. وقد يكون المفتاح بسيطا أي مكون من حقل أو عمود واحد فقط و قد يكون المفتاح مركبا أي مكون من عدة حقول أو أعمدة و يسمى في هذه الحالة Compound .key أوالً :المفتاح الرئيسي (االساسي) Primary Key المفتاح الرئيسي هو حقل يحتوي على بيانات ال يمكن أن تتكرر لتمييز السجالت عن بعضها. ومسألة اختيار مفتاح رئيسي لجدول يشوبها بعض الخطأ ،فمثالً لو أردنا وضع مفتاح رئيسي لجدول بيانات الشخص فإننا نحاول إيجاد حقل ال تتكرر البيانات بداخله ( )Uniqueوأن ال يترك فارغ ( ،)Not nullفأول شيء يخطر ببال المصمم هو استخدام االسم مثالً ولكن هذه الحقل ال يصلح ,ألن االسم قد يتكرر عند استخدام قاعدة بيانات كبيرة, لذلك فإننا سنستخدم رقم الهوية كمفتاح رئيسي لعدم تكرار هذا الحقل في كل الجدول. و قد يكون المفتاح الرئيسي بسيطا ً أو مركبا ً. إرشادات حول تعيين المفتاح األساسي (أو شروطه) يجب ان ال تتغير قيمته ابدا خالل عمل النظام يجب ان ال تكون قيمته فارغة ( قيمه مطلوبة دائما ) يمكن ان يكون مركبا ً اذا تعذر الحصول على مفتاح بسيط ان ال تتكرر قيمته ان يكون فريدأ ومميزا لحاله واحدة على االكثر من سجالت الكيان 27 ثانيا ً :المفتاح الثانوي (األجنبي) Foreign Key و هو عبارة عن حقل يمثل المفتاح الرئيسي في جدول آخر و يستخدم في ربط الجدولين معا ,و ال يشترط عدم تكرار قيمته في الجدول الثاني. و يشترط أيضا أن يكون المفتاح الثانوي مطابقا للمفتاح األساسي في الجدول األول من حيث النوع و الحجم و عدد الحقول. و قد يكون المفتاح الثانوي بسيطا ً أو مركبا ً. الشكل التالي يوضح قاعدة البيانات العالئقية ومفتاحي االساسي والثانوي : 28 29 الفصل الثالث نموذج الكيانات والعالقات 30 الفصل الثالث نموذج الكيانات والعالقات نموذج الكيانات والعالقات (Entity Relationship Diagram) ERD هو عبارة عن نموذج لتمثيل كيانات النظام وصفاتها وكيفية ارتباط هذه الكيانات مع بعضها باستخدام رموز رسومية وعناصر هذا النموذج. نموذج البيانات :هو عبارة عن تمثيل بسيط لوصف تراكيب البيانات على شكل رسومي دون النظر الى مكان وكيفية تخزين او الوصول الى هذه البيانات. ويستخدم هذا النموذج كوسيلة اتصال ما بين المصمم من جهة وبين المبرمجين والمستخدمين من جهة اخرى. الكيان Entity :هو عبارة عن كائن او شئ محط االهتمام في النظام وعلينا ان نقوم بجمع وتسجيل البيانات عن هذا الكيان .ويرمز للكيان بمستطيل يحتوي على اسم الكيان. مثل :الطالب ،المقرر ،المدرس ،الشعبة -كيانات في قاعدة البيانات لجامعة، والطبيب والمريض ووصفة العالج -كيانات في قاعدة بيانات لمستشفى . ونرسمها بشكل مستطيل كالتالي : مريض طالب موظف 31 الصفات Attributes الصفة Attribute :هي صفة معينة تصف الكينونات ،مثل :اسم الموظف ،عمر الطالب، دواء المريض ،درجة الطالب ،عدد الساعات الدراسية لمقرر . كل صفة تتبع كيان معين يتم تمثيل الصفات بشكل بيضوي يحتوي على اسم الصفة وتربط الصفة مع الكيان بواسطة خط مستقيم انواع الصفاتAttributes types : -بسيطة :Simple Attributeله قيمة واحدة مجردة بدون تفاصيل مثل الجنس , الرقم القومي -مركبة Composite Attributeيمكن استخراج عدة تفاصيل من قيمته مثل اسم الموظف )االسم األول والعائلة ,العنوان (رقم – اسم الشارع – المدينة – البلد) -مشتقة : derived Attributeهي صفة بسيطة يمكن الحصول عليها من صفة بسيطة اخرى مثل تاريخ الميالد ,اجمالي المرتب (المرتب – العالوات) -متعددة القيم Multi Valued attribute لها اكثر من قيمة ،مثل يكون السيارة لها اكثر من لون – المؤهل (بكالوريوس – ماجستير – دكتوراه ) ,التليفون . -مفتاح الصفة Key Attributeهو صفة لها قيم مميزة ال تتكرر كالرقم القومي رقم كارينه الطالب ويرمز له بخط مستقيم تحت اسم الصفة. 32 -الكيان الضعيف Weak Entityهو كيان ليس له Key attributeويكون وجوده مرتبط بوجود Entityاخر ,مثل كيان العائل الذي مرتبط وجوده بوجود كيان للموظف الذي يعولهم ويرمز له بإثنين مستطيل -يتم تمثيل الكيان الضعيف باستخدام مستطيل مزدوج الخط ،كما موضح ادناه: المفتاح الجزئي :هو مفتاح يتكون من مجموعة من الصفات التي تعرف الكيان الضعيف Weak Entityالمرتبط بالكيان المعرف له بطريقة وحيدة ويتم تمثيله عن طريق وضع خط متقطع تحت الصفات المكونة له. ويتم تمثيله مع العالقة المعرفة له ،بخط مزدوج لالشكال المعرفة لهم في نموذج الكينونة/العالقة مفتاح مفتاح 33 الكيان "ابناء" كيان ضعيف اليحتوي على مفتاح لذاته ولكن له (المفتاح الجزئي مثل اسم االبن الذي يمكن ان يتكرر لموظف اخر ولكن ال يتكرر لنفس الموظف)، العالقة (يعول) هي العالقة المعرفة للكيان الضعيف "ابناء". االسم العنوان الصلة ابن يعول موظف الرقم السن االسم 34 35 مثال على ماسبق : مـثال بيانات مركز تدريب اآلن نحاول تطبيق ما اخذناه سابقا ،فنرى ماذا يحتاج المركز؟؟ أو ما هي الكيانات الرئيسية التي يجب أن تخدمها قاعدة البيانات التي نريد تصميمها ؟؟ المدرب المتدرب الدورة اآلن ماهي صفات كل كيان؟؟ المتدرب :اسم المتدرب ،تاريخ الميالد ،السكن ،رقم الهاتف ،ونضع حقل مفتاح أساسي لتميز كل متدرب عن األخرى وهو الرقم .. المدرب :اسم المدرب ،التخصص ،السكن ،رقم المنزل ،ونضع أيضا حقل مفتاح أساسي لتميز كل مدرب عن األخر وهو رقم المدرب الدورات :اسم الدورة ،عدد ساعات الدورة ،و نضع أيضا حقل مفتاح أساسي لتميز كل دورة عن األخرى وهو اسم الدورة. رسم الكيانات مع الصفات: اسم الدورة الدورة عدد الساعات 36 الرقم رقم الهاتف المتدرب االسم االسم االول السكن المواليد اللقب الرقم المدرب رقم الهاتف االسم االسم االول السكن التخصص اللقب 37 العالقات و أنواعها عالقة واحد إلى واحد (:)One- to –One تربط هذه العالقة بين كيانين على أن يرتبط كال العنصرين (عنصر من كل كيان) من عناصر البيانات معا بحيث يتم تحديد قيمة العنصر الثاني عندما تكون قيمة العنصر األول معلومة عند لحظة زمنية معينة.ويرمز لها بالرمز ( .) 1 – 1 فمثال إذا كانت Aتمثل المسافر فإن Bتمثل مقاعد الطائرة a1.يقابله b1 a3 ,يقابله b3وهكذا (أي أن لكل مسافر مقعده الخاص و الوحيد في الطائرة) كما بالشكل التالي : 38 عالقة واحد إلى متعدد ( :)One-to-Many يفيد هذا النوع من العالقات في تحديد ارتباط عنصر من عناصر الكيان B مع عنصر أو أكثر من عناصر الكيان Aفعندما يأخذ عنصر من Bقيمة معينة فإنها ترتبط بأكثر من قيمة من قيم .A فمثال معلومات االب و أوالده هي واحدة لمتعدد.ويرمز لها بالرمز ( – 1 ∞). عالقة واحد إلى متعدد ( :)Many-to-One أما إذا كانت عدة قيم مرتبطة بقيمة واحدة فتسمى العالقة عالقة متعدد إلى واحد كما في الشكل.و هي عكس العالقة السابقة ,فعالقة األوالد باألب هي متعدد إلى واحد.ويرمز لها بالرمز(.) ∞ –1 39 كما بالشكل التالي : عالقة متعدد إلى متعدد(:)Many-to-Many يسمى ارتباط عدة قيم مع عدة قيم أخرى بعالقة متعدد إلى متعدد.ويرمز لها بالرمز ( ∞ – ∞ ). ولهذا النوع من العالقات تطبيقات متعددة في حياتنا اليومية منها الطالب والمقررات فكل طالب قد يسجل عدة مقررات ,وكل مقرر يتم التسجيل عليه من قبل عدة طالب. 40 كما بالشكل التالي : 41 ملخص طريقة تحديد نوع العالقة: العالقة بين الطبيب والمريض: الطبيب يعالج أكثر من مريض والمريض يكون تحت إشراف طبيب واحد، إذن تكون العالقة واحد إلى متعدد :واحد من جهة الطبيب ومتعدد من جهة المريض العالقة بين الدواء والمريض: الدواء يأخذه أكثر من مريض والمريض يأخذ أكثر من دواء، إذن تكون العالقة متعدد إلى متعدد العالقة بين الغرفة والمريض: الغرفة يرقد بها أكثر من مريض والمريض يرقد في غرفة واحدة، إذن تكون العالقة واحد إلى متعدد :واحد من جهة الغرفة ومتعدد من جهة المريض 42 القيود على العالقات Cardinality of Relationship اي عدد Entityالذي يستطيع ان يتعامل مع اي عدد من Entityالناحية الثانية فيمكن ان الكيان ال يتعامل اال مع كيان واحد فقط . فالقسم يديره موظف واحد فقط والموظف اليدير اال قسم واحد فقط -كما ان Entityيمكن ان يتعامل مع اكثر من كيان من الطرف االخر فالقسم يدير عدة مشاريع والقسم يعمل فيه مجموعة موظفين كما ان الموظفيم يمكن ان يساهموا في عدة مشاريع ,وبالطبع المشروع يتكون من عدة موظفين 43 انواع القيود على العالقات Relationship Constraints قيد العالقة هو القيد الذي يعتمد على طبيعة اشتراك كيانين في عالقة ما. ويحدد نوع االشتراك Participation Constraintما اذا كان وجود الكيان يعتمد على كونه مرتبط بكيان اخر عن طريق العالقة. هناك نوعين من القيود: – االشتراك الكلي Total Participation – االشتراك جزئي Partial Participation -فاذا كان كل مكونات الكيان في طرف يشارك (يساهم) بالكامل في احد الكيانات في الطرف االخر يسمى Total Participation مثل عالقة الطلبة بالمقررات الدراسية اما اذا كان جزء منها فقط يشارك هنا تسمى Partial Participation مثل موظف واحد يدير قسم واحد حيث ان ليس كل الموظفين مديرين كما ان كل قسم من االقسام البد ان يديره موظف واحد فقط . كذلك البد ان يكون لكل عائل (تابع) موظف يعيله Total وليس شرط ان لكل موظف عائل تبعه االشتراك الكلي :Total Participation كل وحدة في الكيان االول يجب ان ترتبط بوحدة من الكيان االخر ضمن العالقة. ومثال ذلك كيان (سجل اكاديمي) لطالب في نظام معلومات الجامعة القسم العنوان 1:1 1:1 الرقم سجل طالب الرقم اكاديمي عنده المرحلة االسم 44 ويتم تمثيل قيد االشتراك الكلي برسم خط مزدوج. االشتراك جزئي :Partial Participation نقول ان العالقة اشتراك جزئي ،اذا كانت بعض الوحدات في الكيان المشترك بالعالقة ترتبط ببعض الوحدات في الكيان االخر ضمن العالقة. االسم العنوان الرقم منتج زبون الرقم N Mيشتري النوع االسم 45 اما االشتراك الجزئي فيتم تمثيله برسم خط مفرد يربط الكيانات المرتبطة. 46 ملخص الهم مفاهيم أساسية في قواعد البيانات عند تحليل نظام ما ال بد من ربط منطقى للبيانات المستخدمة في بنيه االعمال في تراكيب معينه من اجل تسهيل اداره هذه البيانات واتخاذ القرار الكيان :يقصد به االشياء او االشخاص او االحداث او المفاهيم وعادة ما يتم تمثيله في جداول بحقول وسجالت الصفات :وتمثل الخصائص او الصفات للكيان وتكون الحقل او العمود في الجدول العالقات :وهي الرابط المنطقي او العالقة بين الكيانات اعتمادا ً على حقول المفاتيح الرئيسيه واالجنبيه في الجداول المرتبطة مع بعضها مخطط عالقات الكيانات :تمثيل رسومي للعالقات بين الكيانات ويسمى ERD 47 شكل يوضح انواع الصفات واشكالها 48 49 الفصل الرابع خوارزمية التحويل من ERDالي Schema 50 دورة حياة قاعدة البيانات Database Life Cycle 51 العالقة (جدول) السكيما Schema Relation وصف قواعد البيانات يسمي ”مخطط قواعد البيانات“ ()Schema يستخدم المخطط عند تصميم قواعد البيانات هذا المخطط ال يتوقع تغيره بشكل تكرارى يتم عادة تمثيل هذا المخطط باستخدام شكل أو رسم هندسي يوضح هذا المخطط بعض األشياء مثل أسماء السجالت وأسماء الحقول وقد ال تظهر فيه نوع البيانات المستخدمة أو العالقات بين البيانات هذا المخطط يتم تخزين وصفه داخل قواعد البيانات وهذا ما يعرف باسم ”“meta-data خوارزمية التحويل من ERD – Relational mapping عملية التحويل هي عبارة عن خطوات محددة يتبعها مصمم قواعد البيانات لتحويل نموذج الكينونة/العالقة الي مخطط قواعد البيانات العالئقية. )(Mapping ERD to relational schema تعتمد عملية التحويل علي فهم المصمم للمبادئ التي تم عرضها ومناقشتها سابقا ً والخاصة بالمفتاح األساسي والمفتاح األجنبى وأنواع الكيانات والعالقات وأنواع االرتباطات بين العالقات 52 خطوات خوارزمية التحويل من ERDالي Schema .1تحويل الكيانات العادية (القوية) .2تحويل الكيانات الضعيفة .3تحويل العالقات الثنائية من النوع 1:1 .4تحويل العالقات الثنائية من النوع N:1 .5تحويل العالقات الثنائية من النوع M:N .6تحويل الصفات متعددة القيم .7تحويل العالقات فوق الثنائية التحويل – الخطوة األولى .1لكل كيان عادي Eفي شكل الكينونة/العالقة يتم عمل اآلتي: إنشاء عالقة (جدول) Tتحتوي علي جميع الصفات البسيطة الموجودة في الكيان .E الصفات المركبة الموجودة في Eيتم تمثيلها في العالقة (جدول) Tعن طريق تمثيل صفاتها البسيطة التي تكون الصفة المركبة (أي ال تظهر الصفات المركبة للكيان Eفي العالقة (جدول) .) T مفتاح العالقة (جدول) Tهو مفتاح الكيان Eأو أحد المفاتيح المؤهلة في حالة وجود أكثر من مفتاح للكيان .E 53 الخطوة األولي :مثال العنوان األول االسم طالب رقم التسجيل العائلة طالب ( رقم التسجيل – العنوان – االسم األول – اسم العائلة ) العالقة (جدول) T التحويل – الخطوة الثانية .2لكل كيان ضعيف Wفي شكل الكينونة/العالقة يتم عمل اآلتي: إنشاء عالقة (جدول) Tتحتوي علي جميع الصفات البسيطة الموجودة في الكيان .W إضافة المفتاح األساسي للكيان المرتبط مع الكيان Wوالمعرف له الي العالقة (جدول) Tمع اعتباره مفتاح أجنبي يربط Wمع الكيان المعرف له. مفتاح العالقة (جدول) Tهو المفتاح الجزئي للكيان + Wالمفتاح األساسي للكيان المرتبط مع الكيان Wوالمعرف له (الذي تم إضافته كمفتاح أجنبي للكيان .)W 54 .3الخطوة الثانية :مثال االسم العنوان N 1 الجنس أبن يعول موظف رقم السن االسم موظف ( رقم الموظف – العنوان – االسم ) العالقة (جدول) T (الجنس -السن – االسم -رقم الموظف ) ابن العالقة (جدول) T 55 التحويل – الخطوة الثالثة .3لكل عالقة Rمن النوع 1:1في شكل الكينونة/العالقة يتم عمل اآلتي: تحديد الكيانان E2 ،E1المرتبطان معا ً عن طريق العالقة .R اختيار واحدة من العالقتين ( )E1 , E2وإضافة المفتاح األساسي للعالقة األخرى كمفتاح أجنبي في العالقة التي تم اختيارها. من األفضل اختيار الكيان المرتبط ارتباطا ً كليا ً بالعالقة (جدول) وال يترك قيم خالية Tليتم ضم المفتاح األساسي للعالقة األخرى إليه كمفتاح أجنبي. إذا كان الكيانان مرتبطان ارتباطا كليا ً بالعالقة (جدول) Tفيمكن اختيار أي كيان لضم المفتاح األساسي للكيان األخر إليه كمفتاح أجنبي وإن كان من الممكن دمج الكيانان E1, E2معا ً ليصبحا كيانا ً واحداً. الخطوة الثالثة :مثال (الحل األمثل) رقم العنوان سجل طبي 1 1 طالب رقم عنده التاريخ االسم المستشفي 56 طالب ( الرقم الجامعي – العنوان – االسم ) سجل طبي ( رقم السجل – التاريخ – المستشفي – الرقم الجامعي ) تابع الخطوة الثالثة :مثال (حل أخر ولكنه غير أمثل) رقم العنوان التاريخ سجل طبي 1 1 طالب رقم عنده المستشفي االسم طالب ( رقم التسجيل – العنوان – االسم – رقم السجل الطبي ) سجل طبي ( رقم السجل الطبي – التاريخ – المستشفي ) (حقل رقم السجل الطبي سيكون فارغ للطالب الذي ليس له سجل طبي وهذا من الممكن أن يتكرر لكثير من الطلبة) 57 تابع الخطوة الثالثة :مثال (ارتباط كلي من الطرفين) رقم العنوان التاريخ سجل طبي 1 1 موظف رقم عنده المستشفي االسم موظف ( رقم الموظف – العنوان – االسم ) سجل طبي ( رقم السجل الطبي – التاريخ – المستشفي -رقم الموظف ) أو موظف ( رقم الموظف – العنوان – االسم -رقم السجل الطبي ) سجل طبي ( رقم السجل الطبي – التاريخ – المستشفي( 58 التحويل – الخطوة الرابعة .4لكل عالقة ثنائية عادية Rمن النوع 1:Nنقوم بعمل اآلتي: نحدد العالقة (جدول) Tوالتي تمثل الكيان الموجود عند الجانب Nفي العالقة .R إضافة المفتاح األساسي للكيان األخر المرتبط بالعالقة Rكمفتاح أجنبي في العالقة (جدول) . T نضيف أية صفات موجودة علي العالقة Rللعالقة (جدول) .T الخطوة الرابعة :مثال تاريخ الراتب رقم العمل العنوان 1 الهاتف قسم موظف N رقم يعمل االسم االسم موظف (رقم الموظف – االسم – العنوان – الراتب– رقم القسم -تاريخ العمل) قسم (رقم القسم – اسم القسم – رقم الهاتف) 59 التحويل – الخطوة الخامسة .5لكل عالقة ثنائية عادية Rمن النوع M:Nنقوم بعمل اآلتي: ننشأ عالقة جديدة Tتمثل العالقة .R إضافة المفاتيح األساسية للكيانين المرتبطين بالعالقة Rكمفاتيح أجنبية في العالقة .T نضيف أية صفات موجودة علي العالقة Rللعالقة .T المفتاح األساسي للعالقة Tهو مجموعة المفاتيح األجنبية التي تم ضمها إلي Tوتمثل المفاتيح األساسية للكيانين المرتبطين بالعالقة .R الخطوة الخامسة :مثال العام رقم العنوان الساعات n m رقم مقرر التسجيل طالب االسم االسم الشعبة 60 طالب (رقم الطالب – اسم الطالب – العنوان) مقرر (رقم المقرر – اسم المقرر – عدد الساعات) التسجيل (رقم الطالب -رقم المقرر– العام – الشعبة ) التحويل – الخطوة السادسة R .6لكل عالقة Rمن الدرجة )( (Nأي ثالثية أو أعلي) نقوم بعمل اآلتي( :عالقة مابين أكثر من كيانين) ننشأ عالقة جديدة Tلهذه العالقة .R إضافة المفاتيح األساسية للكيانات المرتبطة بالعالقة Rكمفاتيح أجنبية في العالقة .T نضيف أية صفات موجودة علي العالقة Rللعالقة .T 61 المفتاح األساسي للعالقة Tهو مجموعة المفاتيح األجنبية التي تم ضمها إلي Tوتمثل المفاتيح األساسية للكيانات المرتبطة بالعالقة .R الخطوة السادسة :مثال رقم التاريخ رقم قطعة الغيار الجهاز الصنف السعر الصيانة التخصص رقم الفني الفني الجهاز (رقم الجهاز – الصنف) الفني (رقم الفني – التخصص) قطعة الغيار (رقم القطعة – السعر) الصيانة (رقم الجهاز -رقم الفني – رقم القطعة – التاريخ) 62 التحويل – الخطوة السابعة .7لكل صفة Aمتعددة القيم ) (multivaluedيتم عمل األتي: ننشأ عالقة جديدة Rلهذه الصفة .A إضافة الصفة Aإلي العالقة Rكصفة لها. إضافة المفتاح األساسي للكيان الذي يحتوي علي الصفة Aكمفتاح أجنبي في العالقة .R المفتاح األساسي للعالقة Rهو المفتاح األجنبي الذي تم ضمه إلي R باإلضافة إلي الصفة .A الخطوة السابعة :مثال الرقم االسم شركة اسماء الفرع شركة ( رقم الشركة – االسم ) الفرع (اسم الفرع– رقم الشركة) 63 تمرين عما سبق الشكل المعطي يمثل نموذج كينونة/عالقة ) (ERلتمثيل بيانات موظفين وأقسامهم في شركة. المطلوب هو تحويل الشكل إلي النموذج العالقي المكافئ له. رقم تاريخ الراتب العمل العنوان 1 N الهاتف قسم يعمل موظف رقم االسم االسم مالحظات للحل : .4لكل عالقة ثنائية عادية Rمن النوع 1:Nنقوم بعمل اآلتي: نحدد العالقة Tوالتي تمثل الكيان الموجود عند الجانب N في العالقة .R إضافة المفتاح األساسي للكيان األخر المرتبط بالعالقة R كمفتاح أجنبي في العالقة .T نضيف أية صفات موجودة علي العالقة Rللعالقة .T 64 حل تمرين رقم 1 تاريخ الراتب رقم العمل العنوان 1 N الهاتف قسم موظف رقم يعمل االسم االسم قسم ( رقم القسم – االسم – الهاتف ) موظف (رقم الموظف – االسم – العنوان -الراتب -رقم القسم -تاريخ العمل ) 65 تمرين 2 الشكل المعطي يمثل نموذج كينونة/عالقة ) (ERلتمثيل بيانات تسجيل الطلبة لمقررات في جامعة. المطلوب هو تحويل الشكل إلي النموذج العالقي المكافئ له. العام رقم العنوان الساعات مقرر n يسجل طالب m رقم االسم الشعبة الفصل االسم مالحظات للحل :لكل عالقة ثنائية عادية Rمن النوع M:Nنقوم بعمل اآلتي: ننشأ عالقة جديدة Tتمثل العالقة .R إضافة المفاتيح األساسية للكيانين المرتبطين بالعالقة Rكمفاتيح أجنبية في العالقة .T نضيف أية صفات موجودة علي العالقة Rللعالقة .T المفتاح األساسي للعالقة Tهو مجموعة المفاتيح األجنبية التي تم ضمها إلي Tوتمثل المفاتيح األساسية للكيانين المرتبطين بالعالقة .R 66