المفتاح الأساسي المركب هو PRIMARY KEY يتكون من عمودين أو أكثر. يستخدم عندما لا يكفي عمود واحد لتمييز الصف، بينما تستطيع مجموعة أعمدة تحديده بصورة فريدة. مثلًا، قد يسجل جدول المهام رقم الموظف ورقم المهمة التي كُلّف بها. يستطيع الموظف تنفيذ عدة مهام، ويمكن إسناد المهمة نفسها إلى عدة موظفين، لكن يجب ألا يتكرر الإسناد نفسه.
عند تعريف المفتاح على العمودين، تمنع قاعدة البيانات تكرار الزوج كاملًا. لا تمنع تكرار رقم الموظف وحده، ولا تمنع تكرار رقم المهمة وحده. كذلك لا تسمح بقيمة NULL في أي عمود مشارك في المفتاح، لأن جميع أجزائه مطلوبة لتحديد الصف.
مثال
CREATE TABLE tasks (
employee_id INT,
task_id INT,
PRIMARY KEY (employee_id, task_id)
);
INSERT INTO tasks VALUES (1, 10), (1, 11), (2, 10);
تنجح هذه الإدخالات لأن الأزواج الثلاثة مختلفة. أما محاولة إدخال الزوج (1, 10) مرة أخرى فتُرفض، حتى لو أضفنا إلى الجدول أعمدة أخرى تحمل بيانات مختلفة.
باختصار: المفتاح المركب يفرض تفرد مجموعة القيم معًا، ويجعل جميع أعمدته غير قابلة لتخزين NULL.
هل تريد تعلّم SQL خطوة بخطوة مع تمارين عملية؟ تابع مسار SQL من الأساسيات للاحتراف.