مقدمة لعلاقات قواعد البيانات

يصف مصطلح قاعدة البيانات "العلائقية" أو "العلاقة" طريقة ربط البيانات في الجداول.

غالبًا ما يواجه القادمون الجدد إلى عالم قواعد البيانات صعوبة في مشاهدة الفرق بين قاعدة البيانات وجدول البيانات. فهم يرون جداول البيانات ويتعرفون على أن قواعد البيانات تسمح لك بتنظيم واستعلام البيانات بطرق جديدة ، لكنها تفشل في إدراك أهمية العلاقات بين البيانات التي تعطي اسمًا لقاعدة البيانات ذات الصلة.

تتيح لك العلاقات وصف الارتباطات بين جداول قاعدة البيانات المختلفة بطرق فعالة. ويمكن بعد ذلك الاستفادة من هذه العلاقات لتنفيذ طلبات البحث المتقاطعة القوية المعروفة باسم الصلات.

أنواع علاقات قواعد البيانات

هناك ثلاثة أنواع مختلفة من علاقات قاعدة البيانات ، يتم تسميتها حسب عدد صفوف الجدول التي قد تكون متضمنة في العلاقة. يوجد كل نوع من أنواع العلاقات الثلاثة هذه بين جدولين.

العلاقات ذات المرجعية الذاتية: حالة خاصة

تحدث العلاقات الذاتية المرجعية عندما يكون هناك جدول واحد فقط المعنية. أحد الأمثلة الشائعة هو جدول "الموظفين" الذي يحتوي على معلومات حول المشرف لكل موظف. كل مشرف هو أيضا موظف ولديه مشرفه الخاص. في هذه الحالة ، هناك علاقة واحدة إلى العديد من المراجع الذاتي ، حيث أن كل موظف لديه مشرف واحد ، ولكن قد يكون لكل مشرف أكثر من موظف واحد.

خلق علاقات مع مفاتيح خارجية

يمكنك إنشاء علاقات بين الجداول عن طريق تحديد مفتاح خارجي . يخبر هذا المفتاح قاعدة البيانات العلائقية التي ترتبط بها الجداول. في العديد من الحالات ، يحتوي عمود في جدول A على مفاتيح أساسية يتم الرجوع إليها من الجدول ب.

النظر مرة أخرى على سبيل المثال من جداول المعلمين والطلاب. يحتوي جدول المدرسين على معرّف ، واسم ، وعمود دورة تدريبية:

معلمون
InstructorID TEACHER_NAME دورة
001 فلان الفلاني الإنجليزية
002 جين شمو الرياضيات

يتضمن جدول "الطلاب" معرفًا واسمًا وعمود مفتاح خارجي:

الطلاب
هوية الطالب أسم الطالب Teacher_FK
0200 لويل سميث 001
0201 بريان شورت 001
0202 كوركى مينديز 002
0203 مونيكا جونز 001

يشير العمود Teacher_FK في جدول الطلاب إلى قيمة المفتاح الأساسي للمعلم في جدول المعلمين.

في كثير من الأحيان ، سيستخدم مصممي قواعد البيانات "PK" أو "FK" في اسم العمود لتعريف مفتاح المفتاح الأساسي أو المفتاح الخارجي بسهولة.

لاحظ أن هذين الجدولين يوضحان علاقة رأس بأطراف بين المعلمين والطلاب.

العلاقات والنزاهة المرجعية

بمجرد إضافة مفتاح خارجي إلى جدول ، يمكنك عندئذ إنشاء قيد قاعدة بيانات يفرض التكامل المرجعي بين الجدولين. هذا يضمن أن تظل العلاقات بين الجداول متسقة. عندما يحتوي أحد الجداول على مفتاح خارجي لجدول آخر ، ينص مفهوم التكامل المرجعي على أن أي قيمة مفتاح خارجية في جدول B يجب أن تشير إلى سجل موجود في جدول A.

العلاقات التنفيذية

اعتمادا على قاعدة البيانات الخاصة بك ، تقوم بتنفيذ العلاقات بين الجداول بطرق مختلفة. يوفر Microsoft Access معالج يسمح لك بسهولة بربط الجداول وكذلك فرض التكامل المرجعي.

إذا كنت تقوم بكتابة SQL مباشرةً ، فعليك أولاً إنشاء الجدول Teachers ، معلنين أن عمود المعرف هو المفتاح الأساسي:

إنشاء المعلمين TABLE (

InstructorID INT AUTO_INCREMENT PRIMARY KEY،
Teacher_Name VARCHAR (100)،
دورة VARCHAR (100)

عند إنشاء جدول "الطلاب" ، تقوم بتعريف عمود Teacher_FK ليكون مفتاحًا خارجيًا يشير إلى عمود InstructorID في جدول المعلمين:

إنشاء الطلاب TABLE (
StudentID INT AUTO_INCREMENT PRIMARY KEY،
Student_Name VARCHAR (100)، Teacher_FK INT،
مفتاح خارجي (Teacher_FK) مراجع معلمات (مدرس)
)

استخدام العلاقات للانضمام إلى الجداول

بمجرد إنشاء علاقة واحدة أو أكثر في قاعدة البيانات الخاصة بك ، يمكنك الاستفادة من الطاقة الخاصة بهم باستخدام استعلامات SQL JOIN لدمج المعلومات من جداول متعددة. النوع الأكثر شيوعًا للانضمام هو SQL INNER JOIN ، أو صلة بسيطة. هذا النوع من الصلة بإرجاع كافة السجلات التي تفي شرط الصلة من جداول متعددة. على سبيل المثال ، سيؤدي شرط JOIN هذا إلى إرجاع Student_Name و Teacher_Name و Course حيث يتطابق المفتاح الخارجي في جدول الطلاب مع المفتاح الأساسي في جدول المعلمين:

SELECT Students.Student_Name، Teachers.Teacher_Name، Teachers.Course
من الطلاب
INNER JOIN المعلمون
ON Students.Teacher_FK = Teachers.InstructorID؛

ينتج هذا البيان جدولاً مثل هذا:

جدول المرتجعات من SQL الانضمام بيان

Student_NameTeacher_NameCourseLowell SmithJohn DoeEnglishBrian ShortJohn DoeEnglishCorky MendezJane SchmoeMathMonica JonesJohn DoeEnglish