هذه المقالة أو أجزاء منها بحاجة لتدقيق لغوي أو نحوي.

المفتاح المرشح

من ويكيبيديا، الموسوعة الحرة
اذهب إلى التنقل اذهب إلى البحث

في النموذج العلائقي لقواعد البيانات، يكون المفتاح المُرشح (بالإنجليزية: Candidate key) للعلاقة هو الحد الأدنى للمُفتاح الأعظم أو ما يُسمى المفتاح الفائق (Superkey) ويحتوي على مجموعة فريدة من القيم في كل صف (مما يجعلها مفتاحًا فائقًا)، مع وجود قيود إضافية تتمثل في أن إزالة أي عمود قد ينتج عنه صفوف متكررة (مما يجعله مفتاحًا فائقًا صغيرًا).[1]

قد يحتوي كل جدول على مرشح واحد أو أكثر، ويتم تحديد أحد مفاتيح المرشح هذه كمفتاح أساسي للجدول، ويحتوي الجدول على مفتاح أساسي واحد فقط، ولكن يمكن أن يحتوي على عدة مفاتيح مرشح. إذا كان مفتاح المرشح يتكون من عمودين أو أكثر، فإنه يطلق عليه مفتاح مُركب. يعتبر مفتاح المرشح مهم، لأنه يساعد في التعرف على أهم مفتاح في أي علاقة وهو المفتاح الأساسي (Primary Key).

يُشار إلى المفاتيح المرشحة أيضًا على أنها مفاتيح أساسية أو مفاتيح ثانوية أو مفاتيح بديلة.

تسمى الأعمدة في المفتاح المرشح سمات أولية،[2] والعمود الذي لا يظهر في أي مفتاح مرشح يسمى سمة غير أساسية.

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

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

مفتاح الأعظم والمفتاح المرشح[عدل]

الاختلافات الرئيسية بين مفتاح الأعظم والمفتاح المرشح: [3]

  1. تسمى السمة المفردة أو مجموعة من السمات التي يمكنها تحديد جميع سمات علاقة معينة بشكل فريد اسم المفتاح الاعظم (super). على الجانب الآخر، يدعى المفتاح الاعظم الذي هو مجموعة فرعية مناسبة من مفتاح الاعظم آخر مفتاح الترشيح.
  2. جميع مفاتيح المرشح هي مفاتيح فائقة ولكن العكس ليس صحيحًا.
  3. يتم التحقق من مجموعة المفاتيح الفائقة للعثور على مفاتيح الترشيح بينما يتم التحقق من مجموعة المفاتيح المرشحة لتحديد مفتاح أساسي واحد.
  4. المفاتيح الفائقة أكثر عددًا نسبيًا من المفاتيح المرشحة.

مثال[عدل]

يمكن توضيح تعريف المفاتيح المرشحة بالمثال التالي، ضع في اعتبارك العلاقة R لديها علاقتين r1 و r2 ولكل منهما السمات (A ، B ، C ، D):

r1
A B C D
a1 b1 c1 d1
a1 b2 c2 d1
a2 b1 c2 d1
r2
A B C D
a1 b1 c1 d1
a1 b2 c2 d1
a1 b1 c2 d2

هنا يختلف r2 عن r1 فقط في قيم A و D للصف الأخير.

بالنسبة لـ r1 ، تتمتع المجموعات التالية بخاصية التفرد، أي لا يوجد صفان لهما نفس القيم في السمات داخل المجموعة:

{A,B}, {A,C}, {B,C}, {A,B,C}, {A,B,D}, {A,C,D}, {B,C,D}, {A,B,C,D}

بالنسبة لـ r2 ، تتمتع المجموعات التالية أيضاً بخاصية التفرد:

{B,C}, {B,D}, {C,D}, {A,B,C}, {A,B,D}, {A,C,D}, {B,C,D}, {A,B,C,D}

يمكننا تحديد مجموعة المفاتيح الفائقة لـ R بأخذ تقاطع القائمتين r1 و r2 :

{B,C}, {A,B,C}, {A,B,D}, {A,C,D}, {B,C,D}, {A,B,C,D}

أخيرًا، نحتاج إلى تحديد تلك المجموعات التي لا توجد مجموعة جزئية مناسبة لها في القائمة، وهي في هذه الحالة:

{B,C}, {A,B,D}, {A,C,D}

هذه هي بالفعل المفاتيح المرشحة لـ R.

طالع أيضا[عدل]

مراجع[عدل]

  1. ^ Date, Christopher (2015)، "Codd's First Relational Papers: A Critical Analysis" (PDF)، warwick.ac.uk، مؤرشف من الأصل (PDF) في 20 يونيو 2022، اطلع عليه بتاريخ 04 يناير 2020، Note that the extract allows a “relation” to have any number of primary keys, and moreover that such keys are allowed to be “redundant” (better: reducible). In other words, what the paper calls a primary key is what later (and better) became known as a superkey, and what the paper calls a nonredundant (better: irreducible) primary key is what later became known as a candidate key or (better) just a key.
  2. ^ Saiedian, H. (01 فبراير 1996)، "An Efficient Algorithm to Compute the Candidate Keys of a Relational Database Schema"، The Computer Journal (باللغة الإنجليزية)، 39 (2): 124–132، doi:10.1093/comjnl/39.2.124، ISSN 0010-4620، مؤرشف من الأصل في 20 يناير 2022.
  3. ^ "الفرق بين مفتاح السوبر ومفتاح المرشح"، ar.gadget-info.com، مؤرشف من الأصل في 25 يوليو 2020، اطلع عليه بتاريخ 25 يوليو 2020.

روابط خارجية[عدل]