شرح صفوف ومحتوى الفقرة
يصل الجدول إلى الصيغة المعيارية الثالثة (3NF) عندما يحقق 2NF ويخلو من أي اعتماد متعدٍّ (Transitive Dependency) بين الأعمدة غير المفتاحية:
- ما هو الاعتماد المتعدي؟ أن يعتمد العمود
Cعلى العمود غير المفتاحيB، بينما يعتمدBعلى المفتاح الأساسيA(مثل: رقم الموظف يحدد رقم القسم، ورقم القسم يحدد اسم مدير القسم). - العلاج الهندسي لـ 3NF: يُفصل اسم مدير القسم وميزانية القسم إلى جدول الأقسام
departments، ويكتفي جدول الموظفين بالمفتاح الأجنبيdept_id.
SQL
-- 3NF Compliant: every non-key column depends directly on id
CREATE TABLE staff_members (
id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
staff_name VARCHAR(100) NOT NULL,
salary DECIMAL(10, 2) NOT NULL,
dept_id INT UNSIGNED NOT NULL,
FOREIGN KEY (dept_id) REFERENCES departments(id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;