تعني خاصية الاتساق Consistency أن تنقل المعاملة قاعدة البيانات من حالة تحقق قواعدها إلى حالة تحقق هذه القواعد أيضًا. لكن المحرك لا يعرف قواعد العمل غير الممثلة في التصميم أو منطق التطبيق. نجاح تعليمة SQL لا يعني بالضرورة أنها تحقق كل متطلبات النظام الذي يستخدمها.
إذا كان لكل طلب عميلًا موجودًا، يمكن التعبير عن ذلك باستخدام مفتاح أجنبي. وإذا كان رقم معين يجب ألا يتكرر، يمكن فرض التفرد. في المقابل، قاعدة مثل ضرورة مراجعة المدير لطلب كبير تحتاج إلى تمثيل مناسب في البيانات ومنطق التنفيذ. لا يكتشف المحرك معناها من أسماء الأعمدة وحدها.
مثال
CREATE TABLE customers (
id INT PRIMARY KEY
) ENGINE=InnoDB;
CREATE TABLE orders (
id INT PRIMARY KEY,
customer_id INT NOT NULL,
FOREIGN KEY (customer_id) REFERENCES customers(id)
) ENGINE=InnoDB;
يوثق المثال علاقة يمكن للمحرك فرضها. وتبقى مسؤولية المطور تحديد القواعد الأخرى ومعالجة حالات الفشل قبل تثبيت المعاملة. لذلك تجمع سلامة النظام بين القيود الصحيحة والمعاملات والمنطق الذي يحافظ على شروط العمل المطلوبة.
باختصار: الاتساق يحافظ على القواعد الممثلة والمنفذة، لكنه لا يستنتج تلقائيًا قواعد عمل لم نحددها.
هل تريد تعلّم SQL خطوة بخطوة مع تمارين عملية؟ تابع مسار SQL من الأساسيات للاحتراف.