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

جدول المحتويات:

مقدمة في علاقات قاعدة البيانات
مقدمة في علاقات قاعدة البيانات
Anonim

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

Image
Image

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

العلاقات تسمح لك بوصف الروابط بين جداول قاعدة البيانات بطرق فعالة. يمكن بعد ذلك الاستفادة من هذه العلاقات لإجراء استعلامات قوية عبر الجداول ، والمعروفة باسم JOINs.

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

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

الخط السفلي

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

إنشاء علاقات مع المفاتيح الخارجية

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

ضع في اعتبارك مثال جداول المعلمين والطلاب. يحتوي جدول المدرسين على معرف واسم وعمود الدورة التدريبية:

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

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

StudentID Student_Name Teacher_FK
0200 لويل سميث 001
0201 بريان شورت 001
0202 كوركي مينديز 002
0203 مونيكا جونز 001

يشير العمود Teacher_FKفي جدول الطلاب إلى قيمة المفتاح الأساسي للمدرس في جدول المدرسين. في كثير من الأحيان ، يستخدم مصممو قاعدة البيانات PK أو FK في اسم العمود لتحديد مفتاح أساسي أو عمود مفتاح خارجي.

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

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

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

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

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

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

CREATE TABLE Teachers (InstructorID INT AUTO_INCREMENT PRIMARY KEY،

Teacher_Name VARCHAR (100)،

Course VARCHAR (100)) ؛

عند إنشاء جدول الطلاب ، فإنك تعلن أن عمود Teacher_FK هو مفتاح خارجي يشير إلى عمود معرف المعلم في جدول المدرسين:

CREATE TABLE الطلاب (StudentID INT AUTO_INCREMENT PRIMARY KEY ،

Student_Name VARCHAR (100) ، Teacher_FK INT ،

مفتاح خارجي (Teacher_FK) مراجع المعلمين (InstructorID))) ؛

استخدام العلاقات لربط الجداول

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

على سبيل المثال ، يُرجع شرط JOIN هذا اسم_الطالب ، واسم_المعلم ، والدورة التدريبية ، حيث يتطابق المفتاح الخارجي في جدول الطلاب مع المفتاح الأساسي في جدول المدرسين:

حدد الطلاب. اسم_الطلاب والمعلمين.

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

Student_Name Teacher_Name الدورة
لويل سميث جون دو الإنجليزية
بريان شورت جون دو الإنجليزية
كوركي مينديز جين شموي الرياضيات
مونيكا جونز جون دو الإنجليزية

موصى به: