# مقدمة إلى قواعد البيانات العلاقية (Relational Databases)
لماذا نحتاج قواعد البيانات؟
نحتاج قواعد البيانات لتنظيم كميات كبيرة من المعلومات بطريقة:
- سهلة التخزين. - سهلة البحث. - سهلة التعديل. - تمنع تكرار البيانات. - تسمح بربط المعلومات ببعضها.
---
مثال: قاعدة بيانات للطلاب
لنفترض أننا نريد تخزين معلومات طلاب الجامعة.
لكل طالب نخزن:
- الاسم الأول. - الاسم الأخير. - العمر. - مدينة الميلاد. - المدرسة الثانوية. - التخصص الحالي.
بدلاً من الاعتماد على الاسم، نعطي كل طالب رقمًا فريدًا يسمى:
**Primary Key (المعرف الأساسي)**
مثال:
| Student ID | الاسم الأول | الاسم الأخير | العمر | التخصص | |------------|------------|--------------|--------|---------| | 101 | أحمد | محمد | 20 | هندسة | | 102 | خالد | علي | 21 | حاسب |
كل طالب يملك معرفًا (ID) لا يتكرر.
---
جدول المواد
بنفس الطريقة ننشئ جدولًا آخر خاصًا بالمواد.
لكل مادة:
- معرف المادة (Course ID). - اسم المادة. - الدكتور. - القسم. - مستوى الصعوبة.
مثال:
| Course ID | اسم المادة | الدكتور | |-----------|------------|----------| | 201 | قواعد البيانات | د. أحمد | | 202 | البرمجة | د. خالد |
---
ربط الجدولين
نفترض أننا نريد معرفة:
- أي طالب درس أي مادة. - تاريخ التسجيل. - الدرجة النهائية.
بدلاً من تكرار جميع بيانات الطالب وجميع بيانات المادة، ننشئ جدولًا ثالثًا يحتوي فقط على:
- Student ID - Course ID - تاريخ التسجيل - الدرجة النهائية
مثال:
| Student ID | Course ID | تاريخ التسجيل | الدرجة | |------------|-----------|---------------|---------| | 101 | 201 | 2025-09-01 | A | | 101 | 202 | 2025-09-01 | B+ | | 102 | 201 | 2025-09-01 | A- |
---
لماذا لا نكرر البيانات؟
لأننا نستطيع:
- استخدام **Student ID** للرجوع إلى جدول الطلاب واستخراج جميع بيانات الطالب. - استخدام **Course ID** للرجوع إلى جدول المواد واستخراج جميع بيانات المادة.
وبذلك نقلل تكرار البيانات ونحافظ على تنظيمها.
---
# Primary Key و Foreign Key
Primary Key
هو معرف فريد داخل الجدول نفسه.
مثال:
- Student ID في جدول الطلاب. - Course ID في جدول المواد.
لا يتكرر داخل الجدول.
---
Foreign Key
عندما نستخدم الـ Primary Key داخل جدول آخر للربط بين الجداول فإنه يسمى:
**Foreign Key (المفتاح الخارجي)**
في جدول تسجيل المواد:
- Student ID يعتبر Foreign Key لأنه يشير إلى جدول الطلاب. - Course ID يعتبر Foreign Key لأنه يشير إلى جدول المواد.
---
لماذا تسمى قواعد بيانات علائقية؟
سميت **Relational Databases** لأنها تعتمد على إنشاء **علاقات (Relationships)** بين الجداول باستخدام المفاتيح (Keys)، بدلاً من تكرار المعلومات في كل جدول.
---
# ملخص
- كل سجل يمتلك معرفًا فريدًا يسمى **Primary Key**. - يمكن ربط الجداول باستخدام هذه المعرفات. - عند استخدام معرف جدول داخل جدول آخر يسمى **Foreign Key**. - العلاقات بين الجداول تقلل تكرار البيانات وتجعل قاعدة البيانات أكثر تنظيمًا وكفاءة.
عن هذا الدرس
# مقدمة إلى قواعد البيانات العلاقية (Relational Databases) لماذا نحتاج قواعد البيانات؟ نحتاج قواعد البيانات لتنظيم كميات كبيرة من المعلومات بطريقة: - سهلة… هذا الدرس ضمن مقدمة لمنهج هندسة الكمبيوتر أساسيات الكمبيوتر في أكاديمية موسى.