عند تعريف عمود باستخدام INT، يسمح MySQL افتراضيًا بتخزين أعداد صحيحة موجبة وسالبة، إضافة إلى الصفر. أما إضافة UNSIGNED فتجعل المجال يبدأ من الصفر، وتزيد أكبر قيمة موجبة يمكن تخزينها. لا يتغير حجم تخزين النوع بسبب هذه الإضافة، وإنما تتغير طريقة توزيع القيم الممكنة داخل المجال المتاح.
يفيد هذا التعريف في أعمدة تمثل كميات لا تقبل السالب، مثل عدد النسخ المتاحة من كتاب. لكنه لا يعني أن العمود يتزايد تلقائيًا، ولا يمنع تكرار الأرقام بين الصفوف، ولا يفرض أن تكون القيمة موجبة تمامًا؛ فالصفر يظل مقبولًا. كذلك لا يغني عن تحديد ما إذا كان العمود يسمح بالقيمة NULL، لأن السماح بالقيم المفقودة مسألة مستقلة عن إشارة العدد.
مثال
CREATE TABLE books (
copies INT UNSIGNED
);
INSERT INTO books (copies) VALUES (0), (120);
في هذا المثال، القيمتان مقبولتان لأنهما عددان صحيحان غير سالبين.
باختصار: تجعل UNSIGNED مجال INT غير سالب، لكنها لا تضيف خصائص التزايد أو التفرد.
هل تريد تعلّم SQL خطوة بخطوة مع تمارين عملية؟ تابع مسار SQL من الأساسيات للاحتراف.