Skip to main content

التعريف والاستخدام السليم لقيم NULL

Eigenvectors and eigenvalues | Essence of linear algebra, chapter 14 (يوليو 2026)

Eigenvectors and eigenvalues | Essence of linear algebra, chapter 14 (يوليو 2026)
Anonim

غالبًا ما يتم الخلط بين المستخدمين الجدد في عالم قواعد البيانات بقيمة خاصة خاصة بالحقل - قيمة NULL. يمكن العثور على هذه القيمة في حقل يحتوي على أي نوع من البيانات ولها معنى خاص جدًا في سياق قاعدة البيانات العلائقية. من الأفضل أن نبدأ نقاشنا حول NULL مع بضع كلمات حول ما هو NULL ليس :

  • NULL ليس الرقم صفر.
  • لا تعد القيمة الفارغة (NULL) قيمة السلسلة الفارغة ("").

    بدلاً من ذلك ، NULL هي القيمة المستخدمة لتمثيل جزء غير معروف من البيانات. في كثير من الأحيان ، سيستخدم مبرمجو قاعدة البيانات العبارة "قيمة فارغة" ، لكن هذا غير صحيح. تذكر: القيمة الفارغة هي قيمة مجهولة يظهر فيها الحقل فارغًا.

    NULL في العالم الحقيقي

    دعونا نلقي نظرة على مثال بسيط: جدول يحتوي على قائمة جرد لموقف فاكهة. لنفترض أن مخزوننا يحتوي على 10 تفاحات وثلاثة برتقال. كما نقوم بتخزين البرقوق ، لكن معلومات مخزوناتنا غير كاملة ولا نعرف كم عدد الخوخ الموجود (إن وجد). باستخدام قيمة NULL ، سيكون لدينا جدول الجرد الموضح في الجدول أدناه.

    قائمة جرد الفاكهة

    InventoryIDبندكمية
    1تفاح10
    2برتقال3
    3برقوقلا شيء

    من الواضح أنه سيكون غير صحيح لتضمين كمية 0 لسجل الخوخ ، لأن ذلك سيعني أنه كان لدينا لا البرقوق في المخزون. على العكس من ذلك ، قد يكون لدينا بعض الخوخ ، لكننا لسنا متأكدين.

    إلى NULL أو NOT NULL؟

    يمكن تصميم جدول إما للسماح بقيم فارغة أم لا.

    فيما يلي مثال SQL الذي يقوم بإنشاء جدول Inventory يسمح لبعض NULLs:

    SQL> CREATE TABLE INVENTORY (InventoryID INT NOT NULL، VARCHAR Item (20) NOT NULL، Quantity INT)؛

    لا يسمح الجدول Inventory هنا قيم فارغة لـ InventoryID و ال بند الأعمدة ، ولكن يسمح لهم لل كمية عمود.

    أثناء السماح قيمة NULL على ما يرام ، يمكن أن تتسبب قيم NULL في حدوث مشكلات نظرًا لأن أي مقارنة للقيم التي بها NULL تنتج دومًا في NULL.

    للتحقق مما إذا كان الجدول الخاص بك يحتوي على قيم فارغة ، استخدم عامل التشغيل IS NULL أو IS NOT NULL. في ما يلي مثال على IS NULL:

    SQL> SELECT INVENTORYID، ITEM، QUANTITY FROMITY INHENTORY where QUANTITY IS NOT NULL؛

    بالنظر إلى مثالنا هنا ، سيعود هذا:

    InventoryIDبندكمية
    3برقوق

    تعمل على NULLs

    غالباً ما ينتج عن العمل بقيم NULL نتائج NULL ، بناءً على عملية SQL. على سبيل المثال ، بافتراض أن A هي NULL:

    العوامل الحسابية

    • A + B = NULL
    • أ - ب = خالي
    • A * B = NULL
    • A / B = NULL

    عوامل المقارنة

    • A = B = NULL
    • A! = B = NULL
    • A> B = NULL
    • A! <B = NULL

    هذه ليست سوى بعض الأمثلة من المشغلين التي سوف دائما إرجاع NULL إذا كان المعامل واحد NULL. توجد استعلامات أكثر تعقيدًا ، وكلها معقدة بقيم NULL. نقطة أخذ المنزل هي أنه إذا سمحت بالقيم الخالية في قاعدة البيانات الخاصة بك ، فافهم الآثار والتخطيط لها.

    هذا هو NULL باختصار!