تخطَّ إلى المحتوى
AzLearn

اختبار السلامة

Integrity Quiz

اختبار ~20 دقيقة المستوى: متوسط

اختبار السلامة — Integrity Quiz

القيود ليست ترفاً. هي قواعد العمل داخل قاعدة البيانات. إذا كان السعر لا يكون سالباً، فليكن هناك CHECK. إذا كان البريد لا يتكرر، فليكن UNIQUE. إذا كان الطلب لا يعيش بدون عميل، فليكن foreign key.

مراجعة

query.sql

الجدول يرفض كوداً فارغاً، تكراراً، أو نسبة خارج النطاق.

لاحظ أن CHECK (percent BETWEEN 1 AND 100) يرفض الصفر عمداً. نسبة خصم 0% ليست خصماً — هي على الأرجح خطأ في الإدخال. إذا وصل كوبون بقيمة 0، يُرفض في قاعدة البيانات قبل أن يصل إلى المستخدم. هذا قرار مجال مدروس لا حذف سهو.

التحدي

أنشئ جدولاً صغيراً للمنتجات يفرض أن السعر غير سالب، ثم أدخل منتجاً صحيحاً واعرض السعر.

تحدي — Challenge

مراجعة المفاهيم

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

سؤال — Question
التطبيق يتحقق أصلاً أن السعر غير سالب — لماذا نكرر القاعدة كـ CHECK في قاعدة البيانات؟
سؤال — Question
ماذا يحدث لجملة INSERT تخالف قيد CHECK (percent BETWEEN 1 AND 100)؟
سؤال — Question
لماذا يبدأ قيد نسبة الخصم من 1 وليس من 0 رغم أن الصفر رقم صالح؟

استرجع الآن أسماء القيود نفسها من ذاكرتك — هي مفردات كل CREATE TABLE محترم.

أكمل الفراغ — Fill in the blank
أكمل الفراغ — Fill in the blank