الثانوية العامة 2026الاستعلام عن النتيجةاعرف الكليات المناسبة لمجموعكتنسيق 2026

الحاسب الآلي · الصف الثاني الثانوي · الترم الأول

إنشاء قاعدة البيانات

إنشاء قاعدة بيانات مشروع قاموس المصطلحات: مفاهيم قواعد البيانات والجدول والسجل والحقل وخصائصه، والمفتاح الأساسي، وأنواع العلاقات رأس برأس ورأس بأطراف وأطراف بأطراف، وMySQL، وقاعدة dbdictionary وجدول terms، والربط من PHP.

آخر تحديث: · كيف نراجع المحتوى

أهداف التعلم

  • أن تتعرف المفاهيم الأساسية المتعلقة بقواعد البيانات.
  • أن تحدد خصائص الحقل وتختار المفتاح الأساسي للجدول.
  • أن تصنف العلاقات في قواعد البيانات وتمثل كلًّا منها بمثال.
  • أن تنشئ قاعدة بيانات مشروع «قاموس مصطلحات الكمبيوتر المصور».
  • أن تمارس عمليات الربط بقواعد البيانات من صفحات PHP.

شرح الدرس

أولًا: المفاهيم الأساسية

  • قاعدة البيانات (Database): تخزين وحفظ مجموعة من البيانات المنظمة والمرتبطة بموضوع معين، بغرض استرجاعها لاتخاذ القرارات.
  • قاعدة البيانات العلائقية (Relational Database): نوع يعتمد على تقسيم البيانات في جداول مع تحديد العلاقات بينها.
  • الجدول (Table): البنية الأساسية لقاعدة البيانات، ويتكون من سجلات وحقول، مثل: جدول الطلاب، أو الموظفين، أو المنتجات.
  • السجل (Record): صف في الجدول يتضمن جميع البيانات الخاصة بشخص واحد أو حالة واحدة، مثل بيانات طالب واحد.
  • الحقل (Field): عمود في الجدول يحتوي على بيان واحد فقط لكل سجل، مثل «اسم الطالب».

خصائص الحقل:

الخاصيةأمثلة
اسم الحقل (Field Name)اسم الطالب، المحافظة، الكمية
نوع بيانات الحقل (Field Data Type)نصي (String) مثل الاسم والعنوان، رقمي (Numeric) مثل الراتب، تاريخ (Date) مثل تاريخ الميلاد
حجم الحقل (Size)عدد الأحرف في الحقل النصي، أو نوع الأرقام في الحقل الرقمي: صحيح (Integer) أو كسر عشري (Decimal)

المفتاح الأساسي (Primary Key): حقل لا تتكرر بياناته، يميز كل سجل عن باقي السجلات، ويلزم لنجاح الربط بين الجداول. ويُعيَّن بإحدى طريقتين:

  1. اختيار أحد حقول الجدول بشرط ألا تتكرر بياناته إطلاقًا حتى مع حجم ضخم من البيانات.
  2. إضافة حقل جديد وتخصيصه مفتاحًا أساسيًا، مثل «رقم الطالب» أو «كود الطالب»؛ لأن حقولًا مثل الاسم أو المحافظة أو تاريخ الميلاد قد تتكرر.

ثانيًا: أنواع العلاقات في قواعد البيانات

مخطط يوضح أنواع العلاقات في قواعد البيانات: رأس برأس بين جدولي بيانات الطالب وحالة الطالب، ورأس بأطراف بين جدولي الصف والطالب عبر حقل أجنبي، وأطراف بأطراف بين جدولي الصف والمعلمين عبر جدول ربط بمفتاح أساسي مركب

النوعمعناهمثالطريقة الربط
رأس برأس (One to One)كل سجل في الجدول الأول يرتبط بسجل واحد فقط في الثاني، والعكس صحيحجدول «بيانات الطالب» وجدول «حالة الطالب»ربط المفتاح الأساسي في الجدولين، ويجب أن يكون الحقلان من نفس نوع البيانات ونفس الحجم (ولا يشترط نفس الاسم)
رأس بأطراف (One to Many)سجل في الجدول الأول يرتبط بعديد من السجلات في الثاني، والعكس غير صحيحالصف الواحد يضم طلابًا كثيرين، والطالب ينتمي إلى صف واحدنضيف المفتاح الأساسي لجدول الرأس (رقم الصف) إلى جدول الأطراف، ويسمى فيه حقلًا أجنبيًا (Foreign Key)، ويمكن تكرار بياناته
أطراف بأطراف (Many to Many)سجل في الأول يرتبط بعديد من السجلات في الثاني، والعكس صحيحالصف يدرّس فيه عدة معلمين، والمعلم يدرّس في عدة صفوفعلاقة نظرية لا تُمثل مباشرة في برامج إدارة قواعد البيانات؛ فتُكسر إلى علاقتين «رأس بأطراف» بإنشاء جدول ربط يضم رقم الصف ورقم المعلم، ويكونان معًا مفتاحًا أساسيًا مركبًا (Composite Key)

ملاحظة: في علاقة رأس برأس بين جدولي «المدرسين» و«الفصول» (لكل فصل رائد واحد فقط)، يُضبط الحقل الأجنبي «كود الرائد» بحيث يكون غير قابل للتكرار (Index No Duplicate).

ثالثًا: نظم إدارة قواعد البيانات

من أمثلة تطبيقات نظم إدارة قواعد البيانات: Access وOracle وMySQL. وسنستخدم MySQL لأنه مجاني (Free Ware) ومفتوح المصدر (Open Source)، ويتعامل مع كميات هائلة من البيانات، وتستخدمه كبرى الشركات العالمية في مجال تكنولوجيا المعلومات.

وتضم هذه التطبيقات كائنات (Objects) أساسية أهمها:

  • الجداول (Tables): لإنشاء جداول قاعدة البيانات بسجلاتها وحقولها، وإدخال البيانات وعرضها وتعديلها.
  • الاستعلامات (Queries): سؤال يوجهه المستخدم لقاعدة البيانات لاسترجاع بيانات أو معلومات، فيعرض بعض الحقول أو بعض السجلات بناءً على شرط معين.

رابعًا: قاعدة بيانات المشروع

  • اسم قاعدة البيانات: dbdictionary
  • اسم الجدول: terms، ويضم خمسة حقول (وقد أُنشئت قاعدة البيانات من جدول واحد للتبسيط):
#اسم الحقلالنوعالطولالفهرسالمحتوى
1idInteger5Primaryرقم المصطلح
2termVarChar50—المصطلح
3transVarChar50—ترجمة المصطلح
4defeVarChar220—التعريف العلمي للمصطلح
5pictureVarChar30—مسار صورة المصطلح

ننشئ قاعدة البيانات والجدول من واجهة phpMyAdmin في حزمة XAMPP (من المتصفح: localhost/phpmyadmin)، أو بأوامر SQL المكافئة:

CREATE DATABASE dbdictionary CHARACTER SET utf8mb4;
USE dbdictionary;

CREATE TABLE terms (
  id INT(5) AUTO_INCREMENT PRIMARY KEY,
  term VARCHAR(50),
  trans VARCHAR(50),
  defe VARCHAR(220),
  picture VARCHAR(30)
);

-- إضافة مصطلح
INSERT INTO terms (term, trans, defe, picture)
VALUES ('الذاكرة العشوائية', 'RAM', 'ذاكرة مؤقتة يُحفظ فيها ما يعمل عليه الحاسب حاليًا', 'pic/ram.png');

-- استعلام: عرض المصطلحات مرتبة
SELECT term, trans FROM terms ORDER BY term;
  • AUTO_INCREMENT: يزيد رقم id تلقائيًا مع كل سجل جديد.
  • utf8mb4: لحفظ الحروف العربية بشكل صحيح.

خامسًا: الربط بقاعدة البيانات من PHP

نضع كود الاتصال في ملف مستقل connection.php ونضمّنه في كل صفحة تحتاج إلى قاعدة البيانات:

<?php
$host = "localhost";
$user = "root";
$password = "";
$database = "dbdictionary";
$conn = mysqli_connect($host, $user, $password, $database);
if (!$conn) {
    die("فشل الاتصال بقاعدة البيانات");
}
mysqli_set_charset($conn, "utf8mb4");
?>

ثم نستدعيه في أي صفحة بالأمر include("connection.php");.

أمثلة وتطبيقات

عرض المصطلحات في صفحة PHP:

<?php
include("connection.php");
$result = mysqli_query($conn, "SELECT term, trans FROM terms ORDER BY term");
while ($row = mysqli_fetch_assoc($result)) {
    echo "<p>" . htmlspecialchars($row["term"]) . " (" . htmlspecialchars($row["trans"]) . ")</p>";
}
?>

الدالة htmlspecialchars تمنع تنفيذ أي كود ضار قد يكون مخزنًا في البيانات.

تدريب: جدولا «المؤلفين» و«الكتب»: المؤلف يكتب كتبًا كثيرة، والكتاب له مؤلف واحد. ما نوع العلاقة؟ وأين تضع الحقل الأجنبي؟ (الإجابة: رأس بأطراف، ونضع «رقم المؤلف» حقلًا أجنبيًا في جدول الكتب).

ملاحظات مهمة

  • الدوال القديمة التي تبدأ بـ mysql_ مثل mysql_query حُذفت من PHP بدءًا من الإصدار 7، وحزم XAMPP الحديثة تعمل بإصدارات أحدث؛ لذلك نستخدم الدوال المكافئة التي تبدأ بـ mysqli_، والفكرة واحدة.
  • المستخدم root بلا كلمة مرور يصلح للتدرب المحلي فقط، لا للمواقع المنشورة.
  • لا يصلح حقل تتكرر قيمه (كالاسم أو المحافظة) أن يكون مفتاحًا أساسيًا.
  • الحقل الأجنبي يمكن تكرار بياناته، أما المفتاح الأساسي فلا.

المفاهيم الأساسية

  • قاعدة البيانات العلائقية: بيانات مقسمة في جداول بينها علاقات.
  • الجدول سجلات (صفوف) وحقول (أعمدة)، وللحقل اسم ونوع بيانات وحجم.
  • المفتاح الأساسي: حقل لا تتكرر بياناته؛ والحقل الأجنبي: حقل ربط في جدول الأطراف يمكن تكرار بياناته.
  • العلاقات: رأس برأس، ورأس بأطراف، وأطراف بأطراف (تُنفذ بجدول ربط ومفتاح مركب).
  • قاعدة المشروع: dbdictionary وجدولها terms بخمسة حقول: id وterm وtrans وdefe وpicture.

ملخص الدرس

قاعدة البيانات تخزين منظم لبيانات مترابطة بغرض استرجاعها، والعلائقية منها تقسم البيانات في جداول تتكون من سجلات وحقول، ولكل حقل اسم ونوع وحجم. ولكل جدول مفتاح أساسي لا تتكرر قيمه. وتنقسم العلاقات بين الجداول إلى رأس برأس، ورأس بأطراف بإضافة حقل أجنبي، وأطراف بأطراف تُكسر إلى علاقتين بجدول ربط ومفتاح مركب. ونستخدم MySQL المجاني مفتوح المصدر لإنشاء قاعدة بيانات المشروع dbdictionary وجدولها terms، ثم نربطها بصفحات الموقع من خلال ملف connection.php.

أسئلة للتدريب

  1. عرّف: قاعدة البيانات، السجل، الحقل، المفتاح الأساسي.
  2. اذكر خصائص الحقل مع مثال لكل خاصية.
  3. لماذا لا يصلح حقل «اسم الطالب» مفتاحًا أساسيًا؟ وما الحل؟
  4. قارن بين أنواع العلاقات الثلاث في قواعد البيانات مع مثال لكل منها.
  5. ما الحقل الأجنبي؟ وفي أي علاقة يُستخدم؟
  6. كيف تُنفذ علاقة أطراف بأطراف عمليًا؟
  7. اذكر اسم قاعدة بيانات المشروع واسم جدولها وحقوله الخمسة.
  8. لماذا اختير تطبيق MySQL لإنشاء قاعدة بيانات المشروع؟
حلّ أسئلة هذا الدرساختبر فهمك بأسئلة اختيار من متعدد وأسئلة مقالية مع نموذج إجابة، أو خض اختبارًا تفاعليًا سريعًا
أبلغ عن خطأ في هذا الدرس