it-swarm.asia

INT (5) مقابل SMALLINT (5): أرقام بين قوسين بعد النوع الرقمي

هل هناك اختلاف بين INT(5) و SMALLINT(5) في تعريفات جدول MySQL؟ أم أن كلاهما يمثلان نفس الحجم؟

30
BenV

int و smallint لها أحجام مختلفة وبالتالي نطاقات.(5) هو smallint(5) أو int(5) يسمى "سمة نوع رقمية" وهو يمثل "عرض العرض" للحقل ،

يدعم MySQL امتدادًا اختياريًا لتحديد عرض عرض أنواع البيانات الصحيحة بين قوسين بعد الكلمة الأساسية الأساسية للنوع. على سبيل المثال ، INT(4) تحدد INT بعرض عرض من أربعة أرقام. يمكن استخدام عرض العرض الاختياري هذا من قبل التطبيقات لعرض قيم الأعداد الصحيحة التي يقل عرضها عن العرض المحدد للعمود عن طريق الحشو الأيسر بمسافات. (أي أن هذا العرض موجود في البيانات الوصفية التي يتم إرجاعها مع مجموعات النتائج. سواء تم استخدامه أم لا ، فهذا متروك للتطبيق.)

عند استخدامها جنبًا إلى جنب مع السمة الاختيارية (غير القياسية) ZEROFILL ، يتم استبدال المساحة الفارغة بالأصفار. على سبيل المثال ، بالنسبة للعمود الذي تم تعريفه كـ INT(4) ZEROFILL ، يتم استرداد قيمة 5 على أنها 0005.

هذا هو "امتداد" MySQL ، و zerofill هو "امتداد" على امتداد.

بالنسبة للطريقة العقلانية للتحكم في عرض نوع رقمي ، لا تستحضر سمات النوع الرقمي واستخدم بدلاً من ذلك

42
Derek Downey