كيف أنشئ عمودًا اختياريًا يقبل القيم الفارغة في SQL؟ (NULL)

سهلقراءة دقيقةآخر تحديث 1 أكتوبر 2026

قواعد البيانات

الإجابة

إذا كان العمود اختياريًا، مثل بريد قد لا يقدمه المستخدم، فاجعله يقبل NULL:

email VARCHAR(100) NULL

NULL تعني “لا توجد قيمة”. وهي الحالة الافتراضية للأعمدة في MySQL ما لم تكتب NOT NULL.

لماذا لا أضع قيمة مثل ‘noEmail’؟

القيمة الوهمية تبدو كبريد حقيقي، وقد يحاول الكود إرسال رسالة إليها. ومع UNIQUE ستتعارض القيم الوهمية المتكررة. NULL أوضح:

SELECT * FROM users WHERE email IS NULL;   -- users without email

ومع UNIQUE؟

email VARCHAR(100) UNIQUE NULL مقبول: يمنع تكرار البريد، ويسمح بعدة صفوف دون بريد، لأن NULL لا يُعتبر مكررًا.

اختبر فهمك

تنشئ جدول المستخدمين، والبريد الإلكتروني اختياري: أحيانًا يُقدَّم وأحيانًا لا. كيف تكتب العمود؟