تصميم قواعد البيانات: MCD و MLD
تصميم قواعد البيانات (Conception de Bases de Données) من المواضيع الهامة في بكالوريا الإعلام الآلي. يعتمد التصميم على منهجية تقوم على مرحلتين رئيسيتين: النموذج المفاهيمي للبيانات (MCD) والنموذج المنطقي للبيانات (MLD).
1. النموذج المفاهيمي للبيانات (MCD – Modèle Conceptuel des Données)
MCD هو تمثيل مجرد للبيانات يصف الكيانات (Entités) والعلاقات (Associations) بينها دون الدخول في التفاصيل التقنية.
عناصر MCD:
- الكيان (Entité): شيء أو كائن في العالم الحقيقي (مثال: طالب، أستاذ، مادة)
- السمة (Attribut / Propriété): خصائص الكيان (مثال: اسم الطالب، رقم التسجيل)
- العلاقة (Association): صلة بين كيانين أو أكثر
- البطاقة (Cardinalité): عدد مرات المشاركة في العلاقة (1,1 / 0,N / 1,N / 0,1)
2. النموذج المنطقي للبيانات (MLD – Modèle Logique des Données)
MLD هو تحويل MCD إلى جداول (Tables) باستخدام المفاتيح الأساسية (Primary Keys) والمفاتيح الخارجية (Foreign Keys).
قواعد التحويل من MCD إلى MLD:
- كل كيان يتحول إلى جدول
- كل سمة تصبح حقلاً (Field) في الجدول
- المفتاح الأساسي (Primary Key) هو المعرف الفريد للكيان
- العلاقة (1,1) → يُضاف المفتاح الأساسي لأحد الجدولين في الآخر
- العلاقة (1,N) → يُضاف المفتاح الأساسي لجدول “1” في جدول “N”
- العلاقة (N,M) → جدول وسيط (Table dassociation)
3. مثال تطبيقي
الموضوع: نريد تصميم قاعدة بيانات لإدارة كلية حيث:
– كل طالب له رقم تسجيل (PK)، اسم، عنوان
– كل مادة لها رمز (PK)، اسم، معامل
– الطالب يسجل في عدة مواد، والمادة يسجل فيها عدة طلاب
– لكل تسجيل: تاريخ التسجيل
MCD:
Entité Étudiant (N_inscription, Nom, Adresse)
Entité Matière (Code_matière, Nom, Coefficient)
Association “Sinscrire” (Étudiant → Matière) : Cardinalité (0,N) – (0,N)
MLD:
Étudiant (N_inscription, Nom, Adresse)
Matière (Code_matière, Nom, Coefficient)
Inscription (N_inscription*, Code_matière*, Date_inscription)
📝 تمرين بكالوريا محلول
التمرين: مدرسة ثانوية تريد إدارة مكتبتها. كل كتاب له رقم (Code_livre)، عنوان، مؤلف، دار نشر. كل تلميذ له رقم (N_Eleve)، اسم، قسم. التلميذ يستعير كتباً وتاريخ الاستعارة مهم. كتاب واحد يمكن استعارته من عدة تلاميذ في أوقات مختلفة. ارسم MCD ثم اكتب MLD.
الحل النموذجي:
MCD:
Entité Livre (Code_livre, Titre, Auteur, Editeur)
Entité Elève (N_Eleve, Nom, Classe)
Association “Emprunter” (Livre → Elève) : Cardinalité (0,N) – (0,N) مع Attribut: Date_emprunt
MLD:
Livre (Code_livre, Titre, Auteur, Editeur)
Elève (N_Eleve, Nom, Classe)
Emprunt (Code_livre*, N_Eleve*, Date_emprunt)
📌 نصائح للبكالوريا
- حدد الكيانات أولاً ثم العلاقات بينها
- لا تنسَ البطاقات (Cardinalités) — مطلوبة في التصحيح النموذجي
- العلاقة (N,M) تتطلب جدولاً وسيطاً دائماً
- المفتاح الخارجي (FK) يربط جدولين ببعضهما
📍 دروس مشابهة:
الاستعلامات المتقدمة في SQL: JOIN والاستعلامات الفرعية والتوابع الإحصائية مع تمارين بكالوريا محلولة
قواعد البيانات: لغة SQL والاستعلامات – الثالثة ثانوي بكالوريا إعلام آلي
مدونة التربية و التعليم في الجزائر – دروس، فروض، نتائج امتحانات مدونة التربية والتعليم في الجزائر | تحضير الدروس، فروض واختبارات، نتائج البكالوريا وBEM، مسابقات التوظيف، والتوجيه المدرسي للطلاب وأولياء الأمور.