نموذج الرسم البياني لعلاقة الكيان (ER) مع مثال لنظام إدارة قواعد البيانات (DBMS).
⚡ ملخص ذكي
مثال على نموذج مخطط علاقات الكيانات (ER) مع نظام إدارة قواعد البيانات يوضح هذا المنهج طريقة منظمة لتمثيل البيانات وترابطاتها بصريًا داخل قواعد البيانات العلائقية. وقد اقترحه بيتر تشين، وهو يوفر أساسًا مفاهيميًا للنمذجة لتحديد الكيانات والخصائص والعلاقات وعدد عناصرها بدقة.

ما هو مخطط العلاقات بين الكيانات (ER)؟
مخطط علاقات الكيانات (ER) أداة بصرية فعّالة لتصميم هياكل قواعد البيانات العلائقية. اقترحه بيتر تشين لأول مرة عام ١٩٧٦، وهو يوفر أساسًا مفاهيميًا للنمذجة يُحدد الكيانات والخصائص والعلاقات وعدد عناصرها بدقة. يغطي هذا الدليل كل شيء بدءًا من المفاهيم الأساسية وصولًا إلى التقنيات المتقدمة، مما يساعدك على إتقان تصميم مخططات قواعد البيانات.
تحتوي مخططات الكيانات والعلاقات على رموز مختلفة تستخدم المستطيلات لتمثيل الكيانات، والأشكال البيضاوية لتحديد السمات، والأشكال المعينية لتمثيل العلاقات.
للوهلة الأولى، يبدو مخطط الكيانات والعلاقات (ER) مشابهاً جداً لمخطط التدفق. إلا أن مخطط الكيانات والعلاقات يتضمن العديد من الرموز المتخصصة، ومعانيها تجعل هذا النموذج فريداً. والغرض من مخطط الكيانات والعلاقات هو تمثيل بنية إطار الكيانات.

تاريخ نماذج ER
اقترح بيتر تشين مخطط الكيانات والعلاقات في عام 1976 في بحثه الرائد "نموذج الكيانات والعلاقات: نحو رؤية موحدة للبيانات". كان هدفه وضع معيار موحد يُمكن استخدامه لقواعد البيانات العلائقية والشبكات على حد سواء. وقد تصور تشين نموذج الكيانات والعلاقات كمنهجية نمذجة مفاهيمية تسد الفجوة بين متطلبات العالم الحقيقي والتنفيذ التقني لقواعد البيانات.
منذ ذلك الحين، تطور نموذج الكيانات والعلاقات (ER) مع أنظمة تدوين متنوعة، بما في ذلك تدوين تشين (الأصلي)، وتدوين قدم الغراب (الشائع في الأدوات الحديثة)، والأساليب القائمة على لغة النمذجة الموحدة (UML). وعلى الرغم من هذه الاختلافات، تظل المفاهيم الأساسية ثابتة في جميع التطبيقات.
لماذا نستخدم مخططات العلاقات بين الكيانات؟
توفر مخططات الكيانات والعلاقات فوائد عديدة لتصميم وتطوير قواعد البيانات:
- التواصل البصري: إنها توفر تمثيلاً مرئياً واضحاً يمكن أن يفهمه كل من أصحاب المصلحة التقنيين وغير التقنيين.
- مخطط التطوير: توضح هذه الجداول بدقة كيفية ربط الجداول وما هي الحقول التي سيحتوي عليها كل جدول.
- جاهز للترجمة: يمكن ترجمة مخططات الكيانات والعلاقات مباشرة إلى جداول علائقية، مما يسمح لك بإنشاء قواعد البيانات بسرعة.
- منع الخطأ: فهي تساعد في تحديد عيوب التصميم والتكرارات قبل التنفيذ، مما يوفر الوقت والموارد.
- المستندات: تُعدّ هذه الوثائق بمثابة وثائق دائمة تساعد أعضاء الفريق الجدد على فهم بنية النظام.
- تحليل النظام: فهي تساعد في تحديد جميع الكيانات الموجودة في النظام والعلاقات بينها.
مكونات مخطط العلاقات بين الكيانات
يتكون كل مخطط علاقات الكيانات من ثلاثة مكونات أساسية: الكيانات، والخصائص، والعلاقات. ويُعد فهم كل مكون وكيفية تفاعلها أمراً ضرورياً لإنشاء تصميمات قواعد بيانات فعالة.
أمثلة على مخطط ER
على سبيل المثال، في قاعدة بيانات الجامعة، قد يكون لدينا كيانات للطلاب، والمقررات الدراسية، والمحاضرين. يمكن أن يحتوي كيان الطالب على سمات مثل رقم التسجيل، والاسم، ومعرف القسم. وقد تكون هناك علاقات بينه وبين المقررات الدراسية والمحاضرين.
الكيانات
يمثل الكيان أي شيء في العالم الحقيقي - حيًا كان أو غير حي - يمكن تحديده بوضوح ويمكن تخزين البيانات عنه. قد يكون شيئًا ماديًا، أو حقيقة تتعلق بالمؤسسة، أو حدثًا يقع في العالم الحقيقي. تشمل الكيانات الأشخاص، والأماكن، والأشياء، والأحداث، والمفاهيم.
أمثلة على الكيانات حسب الفئة:
- شخص: موظف، طالب، مريض، عميل
- المكان: متجر، مبنى، مكتب، مستودع
- موضوع: آلة، منتج، سيارة، كتاب
- الحدث: بيع، تسجيل، تجديد، معاملة
- المفهوم: الحساب، الدورة، القسم، المشروع
مجموعة الكيانات
مجموعة الكيانات هي مجموعة من الكيانات المتشابهة التي تشترك في سمات مشتركة. على سبيل المثال، يشكل جميع الطلاب في الجامعة مجموعة كيانات "طالب". تُمثَّل الكيانات في مخططات الكيانات والعلاقات باستخدام مستطيلات، مع كتابة اسم الكيان داخلها.
تُمثَّل الكيانات بخصائصها، والتي تُسمى أيضًا بالسمات. ولكل سمة قيمها الخاصة. على سبيل المثال، قد يكون لكيان الطالب اسم وعمر وفصل دراسي كسمات.
الكيانات القوية مقابل الكيانات الضعيفة
تُصنّف الكيانات إلى قوية أو ضعيفة بناءً على قدرتها على الوجود بشكل مستقل. ويُعدّ فهم هذا التمييز أمراً بالغ الأهمية لتصميم قواعد البيانات بشكل سليم.
يمتلك الكيان القوي مفتاحه الأساسي الخاص به ويمكنه الوجود بشكل مستقل. على سبيل المثال، يمكن تحديد كيان "الطالب" بشكل فريد بواسطة Student_ID دون الاعتماد على أي كيان آخر.
يفتقر الكيان الضعيف إلى مفتاح أساسي خاص به، ويعتمد على كيان قوي (يُسمى الكيان المالك) لتحديد هويته. ويستخدم مفتاحًا جزئيًا (مُميزًا) مُدمجًا مع المفتاح الأساسي للكيان المالك لتحقيق التفرد. على سبيل المثال، في نظام مصرفي، يعتمد كيان "المعاملة" على كيان "الحساب" - فرقم المعاملة وحده ليس فريدًا في قاعدة البيانات بأكملها، ولكنه يصبح فريدًا عند دمجه مع رقم الحساب.
| كيان قوي | كيان ضعيف |
|---|---|
| يحتوي على مفتاحه الأساسي الخاص به | لا يحتوي على مفتاح أساسي؛ يستخدم مفتاحًا جزئيًا |
| ممثل بمستطيل واحد | ممثل بمستطيل مزدوج |
| المفتاح الرئيسي مسطر بخط متصل | المفتاح الجزئي مسطر بخط متقطع |
| يمكن أن توجد بشكل مستقل | يعتمد وجوده على الكيان المالك |
| مرتبط بعلاقة ماسة واحدة | مرتبط بالماس المزدوج (تحديد العلاقة) |
| مثال: طالب، موظف، منتج | مثال: معاملة، تابع، عنصر_الطلب |
علاقة
تمثل العلاقة ارتباطًا بين كيانين أو أكثر. تُحدد العلاقات عادةً باستخدام أفعال أو عبارات فعلية تصف كيفية تفاعل الكيانات مع بعضها البعض. في مخططات الكيانات والعلاقات، تُستخدم أشكال معينية لتمثيل العلاقات. مثال: يعمل توم في قسم الكيمياء.
الكيانات تشارك في العلاقات. يمكننا في كثير من الأحيان تحديد العلاقات مع الأفعال أو عبارات الفعل.
أمثلة:
- أنت تحضر هذه المحاضرة
- أنا ألقي المحاضرة
- أحد الطلاب يحضر محاضرة
- محاضر يلقي محاضرة
السمات
السمة هي خاصية أو ميزة تصف كيانًا أو علاقة. توفر السمات المعلومات التفصيلية التي تجعل كل كيان فريدًا وذا معنى. في مخططات الكيانات والعلاقات، تُمثَّل السمات بأشكال بيضاوية متصلة بالكيان الأصل بخط.
على سبيل المثال، قد يحتوي كيان الطالب على سمات مثل Student_ID و Name و Date_of_Birth و Email و Phone_Number.
أنواع الصفات
| نوع السمة | الوصف | مثال |
|---|---|---|
| بسيط (Atomج) | لا يمكن تقسيمها إلى مكونات أصغر | رقم الهاتف، رقم الضمان الاجتماعي، البريد الإلكتروني |
| مركب | يمكن تقسيمها إلى سمات فرعية أصغر | الاسم الكامل (الاسم الأول، الاسم الأوسط، اسم العائلة)، العنوان (الشارع، المدينة، الرمز البريدي) |
| مستمد | يتم حساب القيمة من سمات أخرى؛ ولا يتم تخزينها مباشرة | العمر (المستمد من تاريخ الميلاد)، السعر الإجمالي |
| متعدد القيم | يمكن أن يحتوي على قيم متعددة لكيان واحد | الجوال Numbersعناوين البريد الإلكتروني، المهارات |
| السمة الرئيسية | يُعرّف كل مثيل من الكيانات بشكل فريد (المفتاح الأساسي) | رقم الطالب، رقم الموظف، رقم ISBN |
نصيحة رئيسية: في مخططات الكيانات والعلاقات، تُعرض السمات الرئيسية مع وضع خط تحت أسمائها. أما السمات المشتقة فتُعرض بأشكال بيضاوية متقطعة، والسمات متعددة القيم تُعرض بأشكال بيضاوية مزدوجة.
عدد العلاقات (أنواع العلاقات)
تُحدد خاصية الكاردينالية القيود العددية للعلاقة، وتحديدًا عدد مرات ارتباط كيان ما بمرات ارتباط كيان آخر. ويُعد فهم الكاردينالية أمرًا أساسيًا لتصميم هياكل قواعد بيانات فعّالة.
1. واحد لواحد (1:1)
يمكن ربط كيان واحد من المجموعة أ بكيان واحد على الأكثر من المجموعة ب، والعكس صحيح.
مثال: يتم تخصيص رقم تعريف طالب واحد فقط لكل طالب، وينتمي كل رقم تعريف طالب إلى طالب واحد فقط.
2. علاقة واحد إلى متعدد (1:N)
يمكن ربط كيان واحد من المجموعة A بكيانات متعددة من المجموعة B، ولكن كل كيان في B يرتبط بكيان واحد فقط في A.
مثال: يتكون الفصل الواحد من عدة طلاب.
3. متعدد إلى واحد (N:1)
يمكن ربط عدة كيانات من المجموعة أ بكيان واحد من المجموعة ب.
على سبيل المثال، ينتمي العديد من الطلاب إلى نفس الفصل.
4. علاقة متعددة الأطراف (M:N)
يمكن ربط كيانات متعددة من المجموعة أ بكيانات متعددة من المجموعة ب، والعكس صحيح.
على سبيل المثال، يرتبط الطلاب كمجموعة بالعديد من أعضاء هيئة التدريس، ويمكن أن يرتبط أعضاء هيئة التدريس بعدة طلاب.
رموز ومصطلحات مخططات العلاقات بين الكيانات
تستخدم مخططات العلاقات بين الكيانات رموزًا موحدة لتمثيل المكونات المختلفة. وعلى الرغم من وجود العديد من أنظمة الترميز، فإن أكثرها استخدامًا هما ترميز تشين وترميز قدم الغراب.
تدوين تشين
يستخدم نظام تدوين تشين، الذي طوره بيتر تشين عام 1976، الأشكال الهندسية لتمثيل العناصر المختلفة:
| رمز | الاسم | يمثل |
|---|---|---|
| مستطيل | كيان | كيان قوي (مثل: طالب، منتج) |
| Double مستطيل | كيان ضعيف | كيان يعتمد على كيان آخر (مثلاً، معاملة) |
| بيضاوي/إهليلجي | السمة | خاصية من خصائص الكيان (مثل الاسم، المعرف) |
| Double القطع الناقص | سمة متعددة القيم | سمة ذات قيم متعددة (مثل رقم الهاتف) Numbers) |
| قطع ناقص متقطع | السمة المشتقة | القيمة المحسوبة (مثلاً، العمر من تاريخ الميلاد) |
| داياموند | علاقة | العلاقة بين الكيانات (مثل التسجيل) |
| Double داياموند | تحديد العلاقة | العلاقة مع الكيان الضعيف |
| لاين | الرابط | يربط المكونات ببعضها البعض |
| نص مسطر | المفتاح الأساسي | معرّف فريد للكيان |
تدوين قدم الغراب
تُستخدم طريقة تدوين قدم الغراب (وتُسمى أيضًا طريقة تدوين IE) بشكل أكثر شيوعًا في أدوات تصميم قواعد البيانات الحديثة. وهي تستخدم نهايات أسطر مختلفة لتمثيل عدد العناصر، وتُعدّ فعّالة بشكل خاص لإظهار جانب "التعدد" في العلاقات.
| رمز Descriptأيون | معنى |
|---|---|
| خط عمودي واحد (|) | إلزامي واحد (واحد فقط) |
| دائرة مع خط (O|) | اختياري واحد (صفر أو واحد) |
| قدم الغراب مع خط (>|) | إلزامي كثير (واحد أو أكثر) |
| قدم الغراب مع دائرة (>O) | اختياري: كثير (صفر أو أكثر) |
تدوين تشين مقابل تدوين قدم الغراب: متى يُستخدم كل منهما
| البعد | تدوين تشين | تدوين قدم الغراب |
|---|---|---|
| أفضل من أجل | النمذجة المفاهيمية، للاستخدام الأكاديمي | النمذجة الفيزيائية/المنطقية، للاستخدام الصناعي |
| عرض السمات | يعرض جميع السمات بصريًا | يعرض السمات داخل مربع الكيان |
| عدد العناصر في المجموعة | يستخدم الأرقام (1، N، M) | يستخدم الرموز البصرية |
| تعقيد | قد يصبح المكان مزدحماً | أكثر إحكاما ونظافة |
| دعم الأداة | دعم محدود للأدوات الحديثة | مدعومة على نطاق واسع في الأدوات |
كيفية إنشاء مخطط علاقة الكيان (ERD)
سنتعلم في هذا الدرس التعليمي حول مخططات علاقات الكيانات (ERD) كيفية إنشاء مخطط علاقات الكيانات. فيما يلي خطوات إنشاء مخطط علاقات الكيانات:
دعونا ندرسها باستخدام مثال مخطط علاقة الكيان:
في الجامعة، يلتحق الطالب بالمقررات الدراسية. ويجب أن يُسجّل الطالب في مقرر دراسي واحد على الأقل. ويتولى تدريس كل مقرر أستاذ واحد. وللحفاظ على جودة التدريس، لا يُسمح للأستاذ بتدريس أكثر من مقرر واحد.
الخطوة 1) تحديد الكيان
لدينا ثلاثة كيانات:
- طالب
- دورة تعليم
- البروفيسور
الخطوة 2) تحديد العلاقة
لدينا العلاقتان التاليتان:
- الطالب تعيين دورة
- الاستاذ يسلم دورة
الخطوة 3) تحديد الهوية
من نص المسألة، نعلم أن:
- يمكن تعيين الطالب متعدد دورات
- يمكن للأستاذ تقديم فقط صورة واحدة؟ الدورة
الخطوة 4) تحديد السمات
عليك دراسة الملفات والنماذج والتقارير والبيانات التي تحتفظ بها المؤسسة حاليًا لتحديد السمات. يمكنك أيضًا إجراء مقابلات مع مختلف أصحاب المصلحة لتحديد الكيانات. من المهم في البداية تحديد السمات دون ربطها بكيان معين.
بعد الحصول على قائمة بالسمات، عليك ربطها بالكيانات المحددة. تأكد من أن كل سمة مرتبطة بكيان واحد فقط. إذا كنت تعتقد أن السمة يجب أن تنتمي إلى أكثر من كيان، فاستخدم مُعدِّلاً لجعلها فريدة.
بمجرد الانتهاء من التعيين، حدد المفاتيح الأساسية. إذا لم يكن المفتاح الفريد متاحًا بسهولة، فقم بإنشاء واحد.
| كيان | المفتاح الأساسي | السمة |
|---|---|---|
| طالب | هوية الطالب | أسم الطالب |
| البروفيسور | هوية الموظف | اسم الأستاذ |
| دورة تعليم | معرف بالطبع | اسم الدورة التدريبية |
بالنسبة لكيان الدورة التدريبية، يمكن أن تكون السمات هي المدة، والوحدات الدراسية، والواجبات، وما إلى ذلك. ولتسهيل الأمر، فقد أخذنا في الاعتبار سمة واحدة فقط.
الخطوة 5) إنشاء مخطط علاقات الكيانات
مثال على تمثيل حديث لمخطط علاقات الكيانات:
أفضل الممارسات لمخططات ER الفعالة
اتبع هذه الإرشادات لإنشاء مخططات علاقات الكيانات (ER) واضحة وقابلة للصيانة وفعالة:
- التخلص من التكرار: قم بإزالة الكيانات أو السمات أو العلاقات المكررة.
- استخدم اتفاقيات التسمية الواضحة: استخدم أسماءً متسقة وواضحة. تجنب الاختصارات.
- التحقق من صحة المتطلبات: تأكد من أن المخطط يدعم جميع احتياجات تخزين البيانات.
- أبقيها بسيطة: أنشئ مخططات متعددة على مستويات مختلفة بدلاً من مخطط واحد مزدحم.
- استخدم اللون باعتدال: استخدم الألوان بشكل متسق لتسليط الضوء على الفئات.
- افتراضات المستند: أدرج ملاحظات تشرح الافتراضات المتعلقة بقواعد العمل.
- Revمراجعة مع أصحاب المصلحة: اطلب من مستخدمي الأعمال والفريق التقني مراجعة الرسم التخطيطي.
- التحكم في الإصدار: حافظ على الإصدارات مع تطور التصميم.
مخططات الكيانات والعلاقات مقابل مخططات فئات لغة النمذجة الموحدة (UML)
على الرغم من استخدام كل من مخططات الكيانات والعلاقات ومخططات فئات لغة النمذجة الموحدة (UML) في نمذجة البيانات، إلا أنها تخدم أغراضًا وسياقات مختلفة. يُعد فهم متى يُستخدم كل منهما أمرًا بالغ الأهمية لتصميم نظام فعال.
| البعد | مخطط ER | مخطط فئة UML |
|---|---|---|
| الغرض الأساسي | تصميم قاعدة البيانات | تصميم البرمجيات/الكائنات |
| التركيز على | البيانات والعلاقات | الكائنات والأساليب والسلوكيات |
| طُرق/Operaستعقد | غير معتمد | بدعم كامل |
| وراثة | محدود (في كفاءة الطاقة فقط) | دعم كامل |
| استخدام الصناعة | مديرو قواعد البيانات، محللو البيانات | مطورو البرمجيات، والمهندسون المعماريون |















