freeCodeCamp/guide/arabic/computer-science/databases/relational-databases/index.md

51 lines
6.5 KiB
Markdown

---
title: Relational Databases
localeTitle: قواعد البيانات العلائقية
---
وبما أن قاعدة البيانات هي طريقة لتخزين البيانات ، فإن قواعد البيانات العلائقية هي نموذج لكيفية تخزين البيانات. يتم تنظيم البيانات في جداول ، والتي تعرف أيضًا باسم العلاقات. تحتوي الجداول على سجل لكل مثيل للبيانات ، والمعروفة باسم السجلات أو المجموعات. تعرف المعرفات الفريدة كل سجل لوصفه عبر قاعدة البيانات.
## الجداول
مثل ورقة في اكسل ، تتكون الجداول من الأعمدة والصفوف. كل صف هو مثيل لبيانات ذات سمات في عمود الجدول تعرف كمجالات. يمكن أن يكون هناك عدة جداول لكل فئة للكيانات. على سبيل المثال يمكن أن يكون جدول المستخدمين. سيكون كل صف مستخدمًا وسيكون لكل حقل تفاصيل حول المستخدم مثل البريد الإلكتروني وكلمة المرور وتفاصيل الاتصال لهذا المستخدم المحدد. في الشكل 1 ، يمكنك رؤية الرسم البياني للمثال.
| | مستخدم | البريد الإلكتروني | الهاتف | | ------------- | ------------ | ------------------ | --- ----------------------------------- | | الصف 1 | جيري j@j.uk.za | 771447444121 | | الصف 2 | سالي batgirl@gh.co.za | 771447444121 | | الصف 3 | أليكس | samwis@tty.fe | 771447444121 | | الصف 4 | دوغ | 4sure@dam.us | 745151515152 |
الشكل 1 - مثال لجدول المستخدم.
## تسجيل
السجل هو كيان واحد للبيانات. كما في المثال أعلاه ، يمكن أن يكون المستخدم أو الحساب أو الجهاز أو أي شيء يمكن أن تمثله البيانات. تحتاج السجلات إلى معرّف فريد يُشار إليه أحيانًا بالمفتاح. يجب أن يكون هذا المفتاح فريدًا حيث يتم استخدامه لوصف العلاقات التي يمتلكها السجل مع السجلات الأخرى في الجداول الأخرى. في الشكل 1 ، يمكننا إضافة مفاتيح لكل صف يحدد هوية كل مستخدم بمفتاح ، ويظهر الجدول الآن بالشكل 2.
| مفتاح مستخدم | البريد الإلكتروني | الهاتف | | ----------- | ------------ | ------------------ | ----- --------------------------------- | | u1 | جيري j@j.uk.za | 771447444121 | | u2 | سالي batgirl@gh.co.za | 771447444121 | | يو 3 | أليكس | samwis@tty.fe | 771447444121 | | u4 | دوغ | 4sure@dam.us | 745151515152 |
الشكل 2 - مثال على قاعدة بيانات المستخدم مع حقل KEY.
## مجالات
الحقول تصف السجل. يمكن أن يحمل هذا أي معلومات على الكيان الذي يرمز إليه السجل. في الشكل 3 ، يمكنك رؤية جدول يعرض الحيوانات الأليفة. تصف الأعمدة (الحقول) كل حيوان أليف (سجل) بـ p\_name و p\_age و p\_type و p\_owner. اختصار p للحيوان الأليف وسيتم شرح العمود الأخير في المقطع التالي على العلاقات.
| مفتاح p\_name | p\_age | p\_owner | | ----------- | ------------ | ------------------ | ----- ---------- | | p1 | سوزي | j@j.uk.za | u1 | | p2 | تراجع قليلا | batgirl@gh.co.za | u1 | | p3 | اميللي | samwis@tty.fe | u2 | | p4 | دوغ | 4sure@dam.us | يو 3 |
الشكل 3 - مثال على الجدول الحيوانات الأليفة.
## العلاقات
تسمح لك قواعد البيانات العلائقية بوصف العلاقات التي تربط الكيانات ببعضها البعض. هذا هو في بعض الأحيان الموضوع الأكثر صعوبة من قواعد البيانات العلائقية لفهم. إذا أخذنا جداول الأمثلة الخاصة بنا ، فيجب أن نكون قادرين على رؤية العلاقة التي يحتويها جدول المستخدم مع جدول الحيوانات الأليفة. إذا قرأت حقل p\_owner يمكنك أن ترى أنه يمكن أن يكون كذلك كما في الشكل 4. وهذا يفسر العلاقة بين كل حيوان أليف وبين مستخدم. العلاقة قد يكون لها أنواع مختلفة.
| مفتاح p\_name | p\_age | p\_owner | | ----------- | ------------ | ------------------ | ----- ---------- | | p1 | سوزي | j@j.uk.za | جيري | p2 | تراجع قليلا | batgirl@gh.co.za | جيري | p3 | اميللي | samwis@tty.fe | سالي | p4 | دوغ | 4sure@dam.us | دوغ |
الشكل 4 - مثال على جدول الحيوانات الأليفة مع حقل المالك المرتبطة.
العلاقة بين واحد إلى عدة هي سجل واحد مرتبط بالعديد من السجلات الأخرى ، على سبيل المثال هو المستخدم جيري بعد أن اثنين من الحيوانات الأليفة. ويمكن أيضًا أن تكون علاقة متعددة الأطراف حيث يمكن أن تكون الجداول كتبًا ومؤلفين ، حيث يمكن للمؤلفين كتابة العديد من الكتب. وأخيراً ، أكثر أنواع العلاقات شيوعًا هو واحد إلى واحد ، وهو سجل يمكن ربطه بسجل واحد فقط ، وسجل آخر واحد فقط.
## استنتاج
هذا هو مجرد مقدمة موجزة في قواعد البيانات العلائقية. يتم توفير الروابط أدناه للموارد التي يمكن أن تساعدك على مزيد من الدراسة لهذا الموضوع.
#### معلومات اكثر:
* قواعد البيانات العلائقية على [ويكيبيديا](https://en.wikipedia.org/wiki/Relational_database)
* واحد لكثير على [ويكيبيديا](https://en.wikipedia.org/wiki/One-to-many_(data_model) )
* كثير إلى كثير على [ويكيبيديا](https://en.wikipedia.org/wiki/Many-to-many_(data_model) )
* واحد إلى واحد على [ويكيبيديا](https://en.wikipedia.org/wiki/One-to-one_(data_model) )
* نموذج العلاقة على [ويكيبيديا](https://en.wikipedia.org/wiki/Entity%E2%80%93relationship_model)